0
我有一個問題,當行處於編輯模式(inlinde編輯),用戶點擊刪除(navgrid)傳遞額外的刪除數據。jqGrid刪除行在編輯模式下,並通過其他數據
這裏是我的代碼:
.navGrid('#' + childGridPagerID, {add: false,edit: true,del: true, cancel: true, refresh: true, view: true, search:false},{},
{// edit options
editCaption: "Exercise Special Note",template: template,
errorTextFormat: function (data) {
return 'Error: ' + data.responseText
},
},
{ // del options
mtype:"POST", reloadAfterSubmit:true, serializeDelData: function (postdata) {
var selRowId = $("#" + childGridID).jqGrid ('getGridParam', 'selrow');
//console.log(selRowID);
if ($("#"+selRowId).attr("editable") === "1") {
$("#" + childGridID).editRow(selRowId, false);
var rowdata = $("#" + childGridID).getRowData(selRowId);
}
console.log(rowdata);
// append postdata with any information
}
}
)
我知道的文件說,在編輯模式下,所以我試圖禁用編輯模式getRowData將無法正常工作之前,我打電話getRowData,但仍然得到HTML在控制檯日誌中,而不是真實的數據。我也看到我可以先保存行,然後刪除它之前獲取我的數據,問題是大多數字段是必需的,用戶可能會刪除行而不填寫所有的字段,這將提示用戶輸入所需的字段。
謝謝奧列格,但我不得不提,這是一個三級子網格的一部分,當我使用VAR ROWID = postdata.id我沒有得到真正的ID,讓我獲取rowData。當使用這種方法時,它返回行的索引(1,2,3,...)等等,但是當我使用getGridParam方法時,我得到了真正的ID,在我的情況下,它返回progGrid_1_table_d_1_1之後,我可以檢索rowData。感謝您的幫助,您是最終的主人。 – boulepick
@boulepick:不客氣!如果你的列有實際的id,那麼你可以在列中輸入'key:true'。它通知jqGrid使用該值作爲rowid,並且'postdata.id'將已經是你所需要的。在這種情況下,您將刪除部分代碼。 – Oleg