jqGrid 编辑完数据后能返回到当前位置的方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jqGrid 编辑完数据后能返回到当前位置的方法相关的知识,希望对你有一定的参考价值。
jqGrid 是一个js的jquery组件,虽然不轻便,但功能还是蛮强大的,也比较方便使用。在数据加载后,经常需要对其中的记录进行编辑,修改完后再返回时需要看到修改后的数据,一般采取重新加载的方法reloadGrid,但问题是列表中的数据因为重新加载之故,记录位置就不是原来的位置了,如果想继续定位在原来位置(keep position)可以采取如下方法:
1. 定义2个全局量:
var selectedRowIndex = 0; //记住记录号
var scrollPosition = 0; //记住jqgrid列表中页面的滚动位置
2. 在onSelectRow事件中保存记录号:
onSelectRow: function () {
selectedRowIndex = $("#" + this.id).getGridParam(‘selrow‘);
。。。
}
或在编辑前保存:
selectedRowIndex = $("#gridId").getGridParam(‘selrow‘); // gridId是jqgrid元素的id名
3. 编辑前记住jqgrid列表中页面的滚动位置:
scrollPosition = $("#gridId").closest(".ui-jqgrid-bdiv").scrollTop();
4. 处理完编辑后在gridComplete事件中恢复:
gridComplete: function () {
$("#" + this.id).setSelection(selectedRowIndex, false);
$("#" + this.id).closest(".ui-jqgrid-bdiv1").scrollTop(scrollPosition);
。。。
}
以上是关于jqGrid 编辑完数据后能返回到当前位置的方法的主要内容,如果未能解决你的问题,请参考以下文章