2010-06-04 123 views
0

我必须在Jqgrid中编辑一行。当我尝试选择任何行时,即使没有对该行进行任何更改,它也会被保存。我需要选择一行,只有当我做任何更改时才应该保存。任何人都可以帮我解决这个问题。 以下是代码。使用asp.net mvc编辑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); 
      } 
      }); 

回答

0

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

或者,你可以只需要saveRow执行 - 你没有真正说出它会给你带来什么样的问题。如果有真正的问题,你可以更具体吗?