page:指示了页码,默认值是1.会随着ajax传递给服务器端。
服务器端可以
page = int.Parse(context.Request["page"].ToString());这样获得。
因此,如果url参数再写成如下,传递page,引起page被覆盖。
url:'./AjaxHandler/jqGrid_Jsondata_Content.ashx?page=2',
所以两种方法解决此问题,一种就是url传值的时候避免使用page命名。可以使用例如pagenum。
另一种方式就是直接对page直接赋值
同样的rowNum指示了的每页的记录数,也会随着ajsx传递到服务器,服务器获得的参数不是rowNum了,而是row,
pagesize= int.Parse(context.Request["rows"].ToString());
##########################################################################################
发现一个bug:
如果返回值是类似如下的,建和值相同的情况,会发生显示不正确的情况,需注意。
{
"total":"4",
"page":"4",
"records":"34",
"rows":[ {
"rowid":"tr0",
"content":"",
"author":"匿名用户",
"datetime":"2011/10/26"
},
{
"rowid":"tr1",
"content":"ssaaa",
"author":"匿名用户",
"datetime":"2011/10/26"
},
{
"rowid":"tr2",
"content":"content",
"author":"author",
"datetime":"2011/08/16"
},
{
"rowid":"tr3",
"content":"content",
"author":"author",
"datetime":"2011/08/16"
}
]
}
本文转自cnn23711151CTO博客,原文链接:http://blog.51cto.com/cnn237111/782103 ,如需转载请自行联系原作者