版本号:
业务场景(如下):
通过业务构件后台取数;前台脚本如下:
//绑定事件
var self = this;
$('#XDataGridDK').on('onSelectPaged', function(e) {
self.listInstance().dataSource.tables(0).defaultView().beginChangePage();
var num = $('#XDataGridDK').datagrid('getPager').pagination("options").pageNumber;
var size = $('#XDataGridDK').datagrid('getPager').pagination("options").pageSize;
self.bindDataGrid(num, size).always(function() { //根据页数信息,重新调用取数方法
self.listInstance().dataSource.tables(0).defaultView().endChangePage();
});
});
$('#XDataGridDK').on('changePageSize', function() {
self.listInstance().dataSource.tables(0).defaultView().beginChangePage();
var size=$('#XDataGridDK').datagrid('getPager').pagination("options").pageSize;
self.bindDataGrid(1, size).always(function() { //根据页数信息,重新调用取数方法
self.listInstance().dataSource.tables(0).defaultView().endChangePage();
});
})
//取数逻辑
return self.context.injector.get("$dataServiceProxy").invokeMethod(
'Genersoft.ZJGL.Web.BankService.ICBCFinancial.FinancialCreditAdd', 'LoadFromDB', param).then(function(ret) {
if (ret.data) {
if (ret.data.DS.DM_ICBC_DKZELR_LIST.length > 0) {
// $('#XDataGridDK').datagrid('loadData', ret.data.DS.DM_ICBC_DKZELR_LIST);
$('#XDataGridDK').datagrid('loadData', {
total: ret.data.total,
rows: ret.data.DS.DM_ICBC_DKZELR_LIST
}).datagrid('clearSelections');
self.listInstance().dataSource = gsp.dataSource(ret.data.DS, {
name: 'DM_ICBC_DKZELR_LIST_ListInstance'
});
self.context.view().bindData(self.listInstance().dataSource);
// 绑定显示文本
$('#XDataGridDK').datagrid('getPager').pagination('refresh', {
pageNumber: ret.data.pageNum, //设置当前页数
pageCount: ret.data.rowCount, //设置总页数
pageSize: ret.data.pageSize, //设置每页显示条数
total: ret.data.total //设置总条数
});
}
else {
// debugger;
$('#XDataGridDK').datagrid('loadData', {
total: 0,
rows: []
});
$.notify.warning("列表为空");
}
}
else {
$.notify.warning("获取列表失败");
}
});
预期效果(如下):
数据,分页实现都没有问题,但是翻页以后列表序号始终从1开始
实际效果(如下)(包括错误,异常):
操作步骤(如下):