我在 DataTables 1.9.4 上使用 bStateSave 和 bServerside。我最初加载具有 1000 行的表,然后导航到行号为 951 到 1000 的最后一页。然后在使用只有 500 行的不同查询重新加载页面时,由于 bStatesave,iDisplayStart 值保持为 950,因此表中未显示任何数据,并且数据表的信息部分显示 - “显示 500 个条目中的 950 到 500 个”
这是我的初始化代码。
var oTable = $('#sampleTable').dataTable({
"sScrollY":"500px",
"bProcessing":true,
"bServerSide":true,
"bStateSave":true,
"sDom":'Crtipl',
"sAjaxSource":"../test.htmlx",
"iDisplayLength":50,
"bPaginate":true,
"sPaginationType":"bootstrap",
"aoColumns": [
{"mDataProp": "id"},
{"mDataProp": function(source){
return "<pre>"+source.description+"</pre>"
}},
{"mDataProp": createdBy"}
],
"fnRowCallback":function(nRow, aData, iDisplayIndex){
$(nRow).on('click',$(nRow),function(){
document.location.href="edit.htmlx"
});
}
});
理想情况下,表格应该位于显示 451 到 500 个条目的最后一页,或者从显示 1 到 50 个条目的第一页开始。bStateSave 必须为 true 才能在重新加载时保存列排序信息。如何解决这个问题呢 ?
谢谢。