У меня возникла проблема с передачей дополнительных данных удаления, когда строка находится в режиме редактирования (inlinde editing), и пользователь нажимает на delete (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 в консольном журнале вместо реальных данных. я также видел, что я мог сначала сохранить строку, а затем получить свои данные перед ее удалением. Большая часть полей требуется, и пользователь может удалить строку без заполнения всего поля, которое побудит пользователя ввести требуемое поле ,
Спасибо Олега, однако я должен отметить, что это является частью Подсеточных три уровня, и, когда я использую вар RowId = postdata.id я не получить реальный идентификатор, который позволяет мне для получения rowData. при использовании этого метода он возвращает индекс строки (1, 2, 3, ...) и т. д., но когда я использую метод getGridParam, я получаю реальный id, в моем случае он возвращает progGrid_1_table_d_1_1, после чего я могу получить Данные ряда. Спасибо за помощь, вы - главный мастер. – boulepick
@ boulepick: Добро пожаловать! Если у вас есть столбец с реальным идентификатором, то в столбце вы можете «key: true». Он сообщает jqGrid использовать значение как rowid, а 'postdata.id' будет уже тем, что вам нужно. В случае, если вы удалите часть своего кода. – Oleg