后台返回json数据,前台显示代码
List list = "从DAL获取的数据集合"
//取出分页标签html
int pageIndex = context.Request["pageIndex"] == null ? 1 : int.Parse(context.Request["pageIndex"]);
int totalCount = 从DAL获取的总数据个数
//分页标签
string strNav = ShowPageNavigate(10,pageIndex,totalCount);//后台分页方法
//当前页数据
var pageData = dbContext.表名.OrderBy<表名,int>(b=>b.Id).skip<表名>((pageIndex - 1) * 10).Take<表名>(10);//从数据库中取出前十条数据
//封装数据到前台
var data = new {Nav = strNav,rows = PageData};//匿名类
System.Web.Script.Serialization.JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
string strJson = javaScriptSerializer.Serialize(list);
context.Response.write(strJson);
//上面的匿名类相当于
public class
{
}
//前台接收值样例
$(function(){
initTableList("");
})
function initTableList(queryParam){
$.getJSON("请求页面",queryParam,function(data){
$(".dataTr").remove();//加载前先清理tr标签
if(data.Rows.length > 0)
{
var strTrs = "";
for(var i = 0;i<data.Rows.length;i++)
{
var branch = data.Rows[i];//获取返回json中的值
//获取值拼接tr标签
var strTr = "<tr class = 'dataTr'>";
strTr += "<td>" + branch .id + "</td>";
strTrs + = strTr;
}
$("#table").append(strTrs);
}
//处理分页导航标签
$("#pagediv").append(data.Nav);
bindNavLinkClick();//调用时一定要注意是:在div里面的超级链接加载完了之后再去绑定点击事件
})
}
fucntion bindNavLinkClick()
{
$(".pageLink").click(function(){
var hrefStr = $(this).attr("href");
var param = hrefStr.substring(hrefStr.indexOf("?") + 1,hrefStr.length)
initTableList(param);
return false;//不让页面跳转
})
}