如何在jqgrid中更改行的特定单元格值

Yas*_*ser 27 jquery jqgrid jqgrid-asp.net

我想更改特定行的单元格值,我有行Id.我尝试过使用以下内容.但它不起作用.

$("#my-jqgrid-table").jqGrid('setCell',rowId,'Currency', '12321');
Run Code Online (Sandbox Code Playgroud)

我在用 loadonce: true

请有人帮我这个.谢谢

tpe*_*zek 58

您可以使用getRowDatasetRowData方法来实现这一点(它们直接使用数据数组):

var rowData = $('#my-jqgrid-table').jqGrid('getRowData', rowId);
rowData.Currency = '12321';
$('#my-jqgrid-table').jqGrid('setRowData', rowId, rowData);
Run Code Online (Sandbox Code Playgroud)

  • 这个shuold真的是公认的答案!SOS (5认同)
  • @notfed事实上,你提到的两种方法都来自旧的API.任何jQuery插件的2,4,7,9-指导方针是揭露只有一个方法,让其他人可作为一个字符串参数(jQuery UI的小部件方法以相同的方式工作) (3认同)
  • 我不知道为什么这个用户接受另一个答案.... :)因为这是jqgrid中的标准解决方案 (2认同)

Jus*_*ene 8

根据文档,这是正确的方法: -

$("#my-jqgrid-table").jqGrid("setCell", rowid, "Currency", "New value");
Run Code Online (Sandbox Code Playgroud)

检查所有变量是否正确,因为您所做的似乎是正确的.loadOnce没有影响,你必须在其他地方犯错.

  • 您确定行名称是货币(不是索引)
  • 检查变量rowId,它应该是rowid还是rowID