【问题标题】:Editing in jqGrid with asp.net mvc使用 asp.net mvc 在 jqGrid 中进行编辑
【发布时间】:2010-06-04 12:24:50
【问题描述】:

我必须在 Jqgrid 中编辑一行。当我尝试选择任何行时,即使我没有对该行进行任何更改,它也会被保存。我需要选择一行,它应该只在我进行任何更改时保存。谁能帮我解决这个问题。 下面是代码。

 //for inline edit
 $('#PayorList').setGridParam({
     onSelectRow: function(id){
        if(id && id != lastSel){                             
          //save changes in row 
          //$('#PayorList').restoreRow(lastsel);
            $('#PayorList').saveRow(lastSel, succesfunc,'','',aftersavefunc ); 
             lastSel=id; 
            }
            //trigger inline edit for row
            $('#PayorList').editRow(id, true,oneditfunc, succesfunc,'','',aftersavefunc); 
           }
          });

【问题讨论】:

    标签: asp.net jqgrid


    【解决方案1】:

    使用 API 解决这个问题没有简单的方法。您可以使用getRowData 检查已编辑的行以确定是否有任何更改,但是由于该行此时仍处于已编辑状态,因此您必须解析原始 HTML 以获取值 - 您无法获取它们直接用那个方法。但是,如果您使用这种技术来确定某行的数据是否未更改,则只需调用 restoreRow 即可撤消更改。

    或者,您也可以只执行 saveRow - 您并没有真正说明它给您带来了什么样的问题。如果有真正的问题,你能说得更具体些吗?

    【讨论】:

      【解决方案2】:

      我使用ondblClickRow 将 jqGrid 切换为内联编辑模式。如果用户按下“enter”键或取消“esc”键,修改将被保存。可能这也是您想要的方式。示例见jqGrid - edit only certain rows for an editable column

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-26
        相关资源
        最近更新 更多