我正在使用单个json在我的代码中创建多个JQGrids。我从服务器发送一些delta值来刷新JQGrid。但是,我应该如何找到该行所在的row_id来修改或删除该行中存在的值?
答案 0 :(得分:0)
你不应该试图找到并替换"某些行来更新它们。
您需要做的是调用$('#myGrid').trigger('reloadGrid')
并让网格更新自身,并使用填充网格的方法返回的内容。
答案 1 :(得分:0)
从你的问题中间接看出你并不完全明白什么是“rowid”以及它将如何指定。
每个网格都将基于HTML <table>
。包含网格数据的主要部分包含将由HTML <tr>
元素表示的行。重要的是要了解jqGrid为每一行(每个id
元素)分配始终 <tr>
属性。 id
属性的值是 rowid 。同样重要的是要理解网格的输入数据不仅应包含主数据,还应包含行的ID。 仅当您未正确填充输入数据时 jqGrid将值1,2,3,...指定为网格的rowid。
每个人都必须知道的一件更重要的事情:一个HTML页面上id
属性的值必须是唯一的。因此,如果您在一个HTML页面上使用完全相同的数据填充两个网格,您可以解决id重复的问题。
为了减少id重复的问题,我建议您使用jqGrid的idPrefix
选项。例如,如果您在第一个网格中使用idPrefix: "g1_"
选项,而在第二个网格中使用idPrefix: "g1_"
选项,那么两个网格中的ID 1,2,3 ......在第一个网格中由jqGrid替换为“g1_1”,“g1_2”,“g1_3”,...,在第二个网格中替换为“g2_1”,“g2_2”,“g2_3”,....换句话说,rowid将由idPrefix
和从服务器返回的id(或由jqGrid生成)构造。
最后一条建议:我建议您在用作jqGrid输入的数据中包含id
值。