我认为这是一个愚蠢的问题,但我找不到解决方案。 我用jqGrid创建了一个表,并启用了内联编辑 在每一行我添加了一个启用或禁用编辑的按钮 我想在编辑期间添加第二个按钮,这个按钮允许您在活动内联编辑行的各个字段中加载默认值。 我不知道在编辑时如何访问和更改数据行 如果选择了行但是没有以内联编辑模式,setRowData可以正常工作 任何人都有任何建议,谢谢。
更新 我找到了一个(我认为很糟糕的)解决方案,但解释了我的问题:
if (edit_enabled) {
// save current data
jQuery('#SEQtbl').jqGrid('saveRow',row_edit, false, 'clientArray');
// read back row data
var row = jQuery("#SEQtbl").jqGrid('getRowData',row_edit);
// change something
....
.....
// save data
jQuery("#SEQtbl").jqGrid('setRowData',row_edit, row);
// reneter row edit mode
jQuery('#SEQtbl').jqGrid('editRow', row_edit,true);
}
`
答案 0 :(得分:0)
我认为你已经在你发布的代码中得到了答案。
根据setRowData的jqGrid documentation“编辑行或单元格时不要使用此方法。这将设置内容并覆盖输入元素”。基本上,当您在处于编辑模式的行上调用setRowData或getRowData时,您将获取/设置行的HTML,而不是数据。
我不确定您的要求是什么,但是在启用/禁用编辑按钮的同时激活“设置默认值”按钮可能是更好的UI解决方案。用户可以单击“设置默认值”,然后设置默认值,然后进入编辑模式。
我不太明白为什么你开始使用这个“设置默认值”按钮。添加新行时不应加载默认值吗?或者您的用户可能想要将已经拥有数据的行重置为默认值?