2012-12-27 85 views
1

我有一個允許內聯編輯的網格。這是我ONSELECT處理它:jqGrid使用successfunc進行內聯編輯

onSelectRow: function(id) 
     { 

      $('tr[id="'+id+'"]').change(function() { 

       saveparameters = { 
        "successfunc" : function(response) { 

         alert(response) 

        }, 
        "url" : null, 
        "extraparam" : {}, 
        "aftersavefunc" : null, 
        "errorfunc": null, 
        "afterrestorefunc" : null, 
        "restoreAfterError" : true, 
        "mtype" : "POST" 
       } 

       $('#breakdownGrid').jqGrid('saveRow', id, saveparameters); 

      }); 

      if(id && id!==lastsel) 
      { 

       editparameters = { 
        "keys" : false, 
        "oneditfunc" : null, 
        "successfunc" : null, 
        "url" : null, 
        "extraparam" : {}, 
        "aftersavefunc" : null, 
        "errorfunc": null, 
        "afterrestorefunc" : null, 
        "restoreAfterError" : true, 
        "mtype" : "POST" 

       } 

       $('#breakdownGrid').jqGrid('restoreRow',lastsel); 
       $('#breakdownGrid').jqGrid('editRow',id, editparameters); lastsel=id; 
      } 
     } 

    }); 

你可以看到,我有一個觸發關閉和運行saveRow的TR的改變事件。這工作正常,不使用successfunc或如果我只是在successfunc返回true。我想弄清楚如何在successfunc中使用來自服務器的響應。我需要在我的editurl頁面上進行額外的檢查。我不確定我需要從該頁面發回什麼內容。我可以在該頁面上完成所有工作,併發送一個true或false,但它不起作用。我現在有警報,它只顯示[對象對象]。

我也試着發送回JSON和解析它,但我不能讓它工作。

對此的任何幫助將是偉大的。

謝謝!

回答

2

請嘗試 alert(response.responseText);

+0

工作。很簡單。謝謝! – Sequenzia