jqGrid 阻止寻呼机导航?
-
25-09-2019 - |
题
我们使用自定义格式化程序来输出 html 表单文本框。如果用户输入了数据并点击了下一个/上一个按钮,我们想告诉他们“您已经编辑了数据,点击确定以留在此页面并保存您的数据”。你怎么能这样做呢?
这 '分页时' 当您使用寻呼机时会触发事件,但它似乎无法阻止分页的发生。
更新: 目前的解决方法:
var currPg = 1;
var dirty = 'false';
$("#list").jqGrid({
...
onPaging: function (b) {
var nextPg = $("#list").getGridParam("page");
if (dirty == 'false') {
currPg = nextPg;
return;
}
$( "#dialog-confirm" ).dialog({
modal: true,
buttons: {
"Stay on current page": function() {
$( this ).dialog( "close" );
},
"Change page": function() {
$( this ).dialog( "close" );
reloadGrid($("#list"), null, nextPg, 'false');
}
}
});
$("#list").setGridParam({page:currPg}); //Workaround - jqGrid still increments the page num even when we return stop so we have to reset it (and track the current page num)
return 'stop';
},
更新2: :已记录错误 这里.
解决方案
如果函数 分页时 返回“stop”则分页将停止。
其他提示
根据我的观察,onPaging 事件在最新的 jqgrid 插件中工作得很好。虽然如果我们使用以前的 jqgrid 插件(3.8 版本之前)。onPaging 事件将工作,但是,在我们使用此事件后分页中存在错误。因为它会自动增加页面的值用户单击“确定”或“取消”(在这两种情况下)。这会导致分页数据损坏。
不隶属于 StackOverflow