1

我认为这是一个愚蠢的问题,但我找不到解决方案。我用 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);
   }

`

4

1 回答 1

0

我认为您已经在发布的代码中得到了答案。

根据 setRowData 的jqGrid 文档“编辑行或单元格时不要使用此方法。这将设置内容并覆盖输入元素”。基本上,当您在处于编辑模式的行上调用 setRowData 或 getRowData 时,您获取/设置行的 HTML,而不是数据。

我不确定您的要求是什么,但是让“设置默认值”按钮与启用/禁用编辑按钮同时处于活动状态可能是一个更好的 UI 解决方案。用户可以点击“设置默认值”,它会设置默认值,然后进入编辑模式。

我不太明白你为什么一开始就有这个“设置默认值”按钮。添加新行时不应该加载默认值吗?还是您的用户可能希望将已经有数据的行重置为默认值?

于 2011-09-25T14:31:50.553 回答