Javascript jqGrid本地数据操作;删除和添加新行时行ID出现问题
我使用jqGrid作为客户端网格输入,允许用户在一次发布所有数据之前输入多个记录 我遇到了一个问题,如果用户添加了一些记录(比如3),记录的id将是1,2,3。如果用户删除记录2,则记录的id将保留1和3 当用户现在添加一条新记录时,jqGrid会再次分配记录id 3,因为它似乎只计算总记录数,并为新记录将其递增1。这会导致在选择行时出现问题,因为现在行id为1、3和3 有人知道如何访问记录的行id吗?因为我可能会使用afterSubmit事件并重新分配从1开始增加的行id。(因此,在我删除行id 2之后,这会将其他行id设置为1和2) 还有其他解决这个问题的建议吗 谢谢 编辑 我已经用以下删除navGrid按钮的代码解决了这个问题Javascript jqGrid本地数据操作;删除和添加新行时行ID出现问题,javascript,jquery,jqgrid,Javascript,Jquery,Jqgrid,我使用jqGrid作为客户端网格输入,允许用户在一次发布所有数据之前输入多个记录 我遇到了一个问题,如果用户添加了一些记录(比如3),记录的id将是1,2,3。如果用户删除记录2,则记录的id将保留1和3 当用户现在添加一条新记录时,jqGrid会再次分配记录id 3,因为它似乎只计算总记录数,并为新记录将其递增1。这会导致在选择行时出现问题,因为现在行id为1、3和3 有人知道如何访问记录的行id吗?因为我可能会使用afterSubmit事件并重新分配从1开始增加的行id。(因此,在我删除行i
}).navGrid('#pager', {add:true, del:true, refresh:false, search:false},
{
...
}, ##edit parameters
{
...
}, ##add parameters
{reloadAfterSubmit:false,
clearAfterAdd:false,
afterComplete:
function () {
## clear and readd the row data so the row ids are sequential
var savedData= $("#inputgrid").jqGrid('getRowData');
$("#inputgrid").jqGrid('clearGridData');
$("#inputgrid").jqGrid('addRowData', 'rn', savedData);
}
} ##delete parameters
);
基本上,只需保存网格数据,然后重新添加它,以便rowid再次按顺序排列
出于某种原因,它会导致左侧的行号从2开始,而不是从1开始Edit通过使用GitHub中最新的jqGrid代码(2010年4月27日)解决了这个问题。但是我发现jquery.fmatter.js版本在您试图编辑行时导致空单元格显示“”,因此我必须将该文件还原回jqGrid 3.6.4中的文件。已解决,如问题的编辑部分所示