asp.net异步获取datatable并显示的实现方法
更新时间:2021年9月22日 10:08 点击:1826
本文讲述了asp.net异步获取datatable并显示的实现方法。分享给大家供大家参考,具体如下:
上面就是结果,前台代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="MethodOne.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <link href="swcss.css" rel="stylesheet" type="text/css" /> <link href="TableZB.css" rel="stylesheet" type="text/css" /> <script src="js-datagrid/scripts/PagerView.js" type="text/javascript"></script> <link href="js-datagrid/style.css" rel="stylesheet" type="text/css" /> <script src="jquery-1.4.1.min.js" type="text/javascript"></script> <script type="text/javascript"> var currentpage = 1; $(document).ready(function() { $.get("Handler.ashx?flag=data&index=" + currentpage, function(data) { $("#sjxs").append(data); }); $.get("Handler.ashx?flag=count", function(count) { var pager = new PagerView('pager'); pager.itemCount = count; pager.size = 5; pager.onclick = function(index) { currentpage = index; $.get("Handler.ashx?flag=data&index=" + index, function(data) { $("#sjxs tr").each(function(m) { $("#add" + m).remove(); }); $("#sjxs").append(data); }); }; pager.render(); } ); }); </script> </head> <body> <form id="form1" runat="server"> <fieldset style="width: 98%; border: solid 1px #EDF7DC;" class="fileset_style"> <legend class="leg_style">查询结果</legend> <%--<div style="overflow:scroll;width:100%;height:100%">--%> <table border="1" cellpadding="0" cellspacing="0" width="100%" align="center" id="sjxs" class="TableStyleZB"> <tr class="trTitle"> <td colspan="5">当前发票库存情况</td> <td colspan="4">购买后一年(含)以上未验旧使用情况</td> <td></td> </tr> <tr class="trTitle"> <td>管理机关</td> <td>合计</td> <td>机打发票</td> <td>手工发票</td> <td>冠名发票</td> <td>其他</td> <td>正常户</td> <td>占库存户数的比率</td> <td>非正常户</td> <td>证件失效户</td> </tr> <tr class="trTitle"> <td>0</td> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> <td>6</td> <td>7=6/1</td> <td>8</td> <td>9</td> </tr> </table> <%--</div>--%> </fieldset> <div id="pager"></div> <div id="info"></div> </form> </body> </html>
处理页面程序如下:
<%@ WebHandler Language="C#" Class="Handler" %> using System; using System.Web; using System.Data; using System.Data.SqlClient; using System.Text; public class Handler : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; if (context.Request.QueryString["flag"].Equals("data")) { context.Response.Write(GetResult(5,Int32.Parse(context.Request.QueryString["index"]))); } if (context.Request.QueryString["flag"].Equals("count")) { context.Response.Write(getCount()); } } private string GetResult() { DataTable dt = new DataTable(); using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["conn"])) { conn.Open(); string sql = "SELECT * FROM TestBlog "; SqlDataAdapter sda = new SqlDataAdapter(sql, conn); sda.Fill(dt); } int rLen = dt.Rows.Count; int cLen = dt.Columns.Count; StringBuilder sb = new StringBuilder(); for (int j = 0; j < rLen; j++) { sb.Append("<tr>"); for (int i = 0; i < cLen; i++) { sb.Append("<td>"); sb.Append(dt.Rows[j][i].ToString()); sb.Append("</td>"); } sb.Append("</tr>"); } return sb.ToString(); } private string GetResult(int pagecount,int currentpage) { DataTable dt = new DataTable(); using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["conn"])) { conn.Open(); string sql = "SELECT TOP "+pagecount+" * FROM TestBlog tb WHERE ydid NOT IN (SELECT TOP "+pagecount*(currentpage-1)+" ydid FROM TestBlog tb2) "; SqlDataAdapter sda = new SqlDataAdapter(sql,conn); sda.Fill(dt); } int rLen = dt.Rows.Count; int cLen = dt.Columns.Count; StringBuilder sb = new StringBuilder(); for (int j = 0; j < rLen; j++) { sb.Append("<tr id=add"+j+">"); for (int i = 0; i < cLen; i++) { sb.Append("<td>"); sb.Append(dt.Rows[j][i].ToString()); sb.Append("</td>"); } sb.Append("</tr>"); } return sb.ToString(); } private string getCount() { DataTable dt = new DataTable(); using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["conn"])) { conn.Open(); string sql = "select count(*) from testblog"; SqlDataAdapter sda = new SqlDataAdapter(sql, conn); sda.Fill(dt); } return dt.Rows[0][0].ToString(); } public bool IsReusable { get { return false; } } }
可惜的是,在ie7中显示不出来结果,但是在chrome、firefox和opera中倒是显示都正常,感兴趣的朋友可以对此加以完善。
希望本文所述对大家asp.net程序设计有所帮助。
下一篇: ADO.NET通用数据库访问类
相关文章
- 这篇文章主要为大家详细介绍了ASP.NET购物车的实现过程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
- 在开发过程中,使用Visual Studio的断点调试功能可以很方便帮我们调试发现程序存在的错误,同样Visual Studio也支持对SQL Server里面的存储过程进行调试,下面就让我们看看具体的调试方法。...2021-09-22
ASP.NET Core根据环境变量支持多个 appsettings.json配置文件
这篇文章主要介绍了ASP.NET Core根据环境变量支持多个 appsettings.json配置文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-09-22- 这篇文章主要介绍了记一次EFCore类型转换错误及解决方案,帮助大家更好的理解和学习使用asp.net core,感兴趣的朋友可以了解下...2021-09-22
- 这篇文章主要介绍了C#中异步和多线程的相关资料,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下...2021-01-16
- 多线程和异步操作两者都可以达到避免调用线程阻塞的目的,从而提高软件的可响应性。甚至有些时候我们就认为多线程和异步操作是等同的概念。但是,多线程和异步操作还是有一些区别的。而这些区别造成了使用多线程和异步操作的时机的区别...2020-06-25
- 本篇文章主要介绍了C# Socket异步通信,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
- 这篇文章主要介绍了C# 遍历datatable字段名和value的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-19
- 将List类型转换成DataTable的通用方法,大家参考使用吧...2020-06-25
- 这篇文章主要给大家介绍了关于JS异步的执行原理和回调的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-08
- 这篇文章主要介绍了C#获取变更过的DataTable记录的实现方法,对初学者很有学习借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了JQuery基于FormData异步提交数据文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-09-02
- 这篇文章主要给大家介绍了关于c# winform异步不卡界面的实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用c#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-06-25
- 这篇文章主要介绍了C#从DataTable获取数据的方法,涉及C#操作DataTable的相关技巧,需要的朋友可以参考下...2020-06-25
详解ASP.NET Core 中基于工厂的中间件激活的实现方法
这篇文章主要介绍了ASP.NET Core 中基于工厂的中间件激活的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-09-22- DataTable用于在.net项目中,用于缓存数据,DataTable表示内存中数据的一个表,在.net项目中运用C#将DataTable转化为CSV文件,接下来通过本文给大家提供一个通用的方法,感兴趣的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C# DataTable常见用法,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下...2020-11-03
asp.net通过消息队列处理高并发请求(以抢小米手机为例)
这篇文章主要介绍了asp.net通过消息队列处理高并发请求(以抢小米手机为例),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-09-22如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)
ECharts地图主要用于地理区域数据的可视化,展示不同区域的数据分布信息,通过本文给大家介绍如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据,需要的朋友参考下吧...2016-02-26ASP.NET 2.0中的数据操作:使用两个DropDownList过滤的主/从报表
在前面的指南中我们研究了如何显示一个简单的主/从报表, 该报表使用DropDownList和GridView控件, DropDownList填充类别,GridView显示选定类别的产品. 这类报表用于显示具有...2016-05-19