1
我有兩個jqGrids。在第一個網格中,我選擇一行,第二個網格根據第一個網格的ID刷新數據。至少這是它應該如何工作的。postData方法不執行功能
//This is code from the second grid
postData: '{ lobId: ' + BudgetCore.getLobId() + ' }',
//Snippet from BudgetCore...
getLobId: function() {
var row = jQuery(BudgetCore.GridTables.Lob).jqGrid('getGridParam', 'selrow');
return row;
}
在Chrome中,我嘗試調試函數getLobid(),但它永遠不會執行。發送postData請求:{lobId:null}。
如果我將上面的代碼更改爲'{lobId:'+ 1 +'}',它就會起作用,所以肯定有一些錯誤導致該函數不能執行。在Chrome JS控制檯執行BudgetCore.getLobId()工作正常。
我嘗試這樣做,但ASP.NET ASMX要求後數據由「」包圍。我應該在這個問題中提到這一點。 – Dan
@丹:對不起,但你錯了。 ASMX接受'''這是JSON中允許引用的唯一字符。如果您需要將信息發送到ASMX,您可以使用'serializeGridData'調用'JSON.stringify',它是原點**爲什麼**函數可以'在這種情況下,您只需要使用'serializeGridData'的修改版本。請參閱[答案](http://stackoverflow.com/a/6296601/315935)以獲取相應的代碼。 – Oleg
我會試試這個,只是請注意,在這個相同的網格(第二個),我有一個postData的子網:'{lobId:'+ BudgetCore.getLobId()+'}',並且它工作正常 – Dan