下面是我用easyui做的一个表格,初次加载10行数据正常,但是我点下一页的时候,后台ashx返回的result数据集是正确的,但是前台的数据就是不变,还是第一页的数据,这是为什么
这是ashx文件返回的result;
case "GetList":
string KeyWord = context.Request["KeyWord"];
string SearchType = context.Request["SearchType"];
if (SearchType == "全部")
{
SearchType = null;
}
int PageSize = Convert.ToInt32(context.Request["rows"]);
int PageNumber = Convert.ToInt32(context.Request["page"]) - 1;
string result = BLL.GetNongQiList(KeyWord, SearchType, PageSize, PageNumber);
context.Response.Write(result);
break;
<script type="text/javascript">
$('#tt').datagrid({
title: "友情链接列表",
url: '../../../Handler/getData.ashx',
pagination: true,
idField: "ID",
queryParams: { method: "GetLink" },
pageNumber: 1,
onLoadSuccess: function (data) {
if (data == "登录超时!") {
top.window.location = "../../SysAdmin/Login.aspx";
}
},
pageSize: 10,
singleSelect: true,
columns: [[
{ field: 'rowIndex', title: '自动编号', width: 100 },
{ field: 'linkname', title: '链接名', width: 100 },
{ field: 'linkurl', title: '链接URL', width: 100 },
{ field: 'type', title: '链接类型', width: 100 },
{ field: 'linkImg', title: '链接图片', width: 100,
formatter: function (value, rowData, rowIndex) {
if (rowData.linkImg != "") {
return '<a href="../../' + rowData.linkImg + '" target="_blank" style="color:black;text-decoration:none;">点击查看</a>';
}
else {
return "暂未上传";
}
}
}
]],
toolbar: [
{
id: 'btnadd',
text: '添加',
iconCls: 'icon-add',
handler: function () {
window.location = 'AddLink.aspx';
return false;
}
}, {
id: 'btnUpdate',
text: '修改',
iconCls: 'icon-edit',
handler: function () {
var selectItem = $('#tt').datagrid('getSelected');
if (selectItem == null) {
$.messager.alert("提示", "请选择要修改的记录!");
}
else {
window.location = "UpdateLink.aspx?id=" + selectItem.id
}
}
}, {
id: 'btnDelete',
text: '删除',
iconCls: 'icon-cut',
handler: function () {
var selectItem = $('#tt').datagrid('getSelections');
var ID = "";
$.each(selectItem, function (key, value) {
ID += value.id;
});
if (ID == "") {
$.messager.alert("提示", "请选择要删除的记录!");
}
else {
$.messager.confirm("提示", "您确定删除选中的数据吗?", function (r) {
if (r) {
$.post("../../../Handler/getData.ashx", { ID: ID, method: "DeleteLink" }, function (data) {
$.messager.alert("提示", data);
$('#tt').datagrid('reload', {
method: "GetLink"
}); //更新列表
}, "html");
}
});
}
}
}]
});
</script>
那datagrid的分页条上面显示的是到2了吗?
好像要设置一个远程加载的属性为true.
分页条上是2了,而且ashx返回的result是第二行的10条数据,但是前台还是不变
参考下这个:http://blog.csdn.net/chinacsharper/article/details/39523053
代码看了下没什么错误。。你确认你分页返回的数据是通过浏览器的开发工具查看到的?
确定下是不是后台数据的问题,我这边到是一直用这个
是不是页面刷新出问题了,debug以下点击下一页确定传过来第二页的数据了???
是不是页面刷新出问题了,debug以下点击下一页确定传过来第二页的数据了???
string result = BLL.GetNongQiList(KeyWord, SearchType, PageSize, PageNumber);
这个实现方法怎么写的啊?
分页方法应该没问题,只是每次赋值的时候页码什么的某个地方没有变化,仔细跟踪检查一下!
你这个问题找到原因了吗?
我今天也遇到了这个问题,刚刚发现,不知道和你的是不是一样的。我说说问题的原因把。easy-ui查询返回的需要 total和 rows,如下
{"total":4,"rows":[{"supId":1,"supName":"苹果供应商","supLinkman":"小张","supPhone":"12388888887","supAddress":"广州花都","supRemark":"普通供应商"},{"supId":2,"supName":"三星供应商","supLinkman":"小王","supPhone":"12388888888","supAddress":"广州增城","supRemark":"普通供应商"}]}
如果你的total为null 时,就会再次请求,也就是你看到的翻页到了第一页。这个你看看你查询总记录数据那里的查询sql语句,是不是 这个sql也使用了limit (mysql) 分页了 。