インライン編集を使用して単一行を編集し、アイコンを使用してnavGrid
追加と削除を処理する jqGrid があります。[追加] ダイアログから [送信] ボタンをクリックした後、行が追加されますが、ダイアログが閉じないことを除いて、問題なく動作しています。closeAfterAdd: true
とをcloseAfterEdit: true
適切な場所 (AFAIK) に配置しましたが、送信後に [追加] ダイアログが消えません。何か単純なものが欠けていると確信していますが、wiki を精査したところ、何が欠けているのかわかりません。以下は私のスクリプトコードです:
$(document).ready(function () {
var lastsel;
var idToSelect;
jQuery("#grdEnvironments").jqGrid({
url: '/Artifacts/GetEnvrionments',
datatype: 'json',
mType: 'GET',
colNames: ['', 'Name'],
colModel: [
{ name: 'TCEnvironmentId', key: true, index: 'TCEnvironmentId', sortable: false, hidden: true, editable: false },
{ name: 'Name', index: 'Name', width: 150, editable: true, editrules: { required: true } },
],
pager: '#grdEnvironmentsPager',
rowNum: 15,
gridview: true,
loadui: 'block',
width: 300,
height: 250,
viewrecords: true,
editurl: '/Artifacts/EditEnvrionment',
caption: 'Various Envrionments',
onSelectRow: function (id) {
if (id && id != lastsel) {
$(this).restoreRow(lastsel);
$(this).editRow(id, {
keys: true,
closeAfterEdit: true
});
lastsel = id;
}
},
loadComplete: function() {
if (idToSelect) {
$(this).jqGrid('setSelection', idToSelect);
//console.log('In load Complete');
//console.log(idToSelect);
idToSelect = undefined;
}
}
});
jQuery('#grdEnvironments').jqGrid('navGrid', '#grdEnvironmentsPager',
{ add: true, edit: false, del: true, search: false, view: false },
{/* Edit Options */
closeAfterEdit: true
},
{/* Add Options */
closeAfterAdd: true,
afterSubmit: function(response) {
idToSelect = response.responseText;
//console.log('In after submit');
//console.log(idToSelect);
return [true,'',idToSelect];
}
});
});
どんな助けでも大歓迎です-これはショーストッパーではありませんが、文書化されている動作を取得したいと思います. ところで - console.log ステートメントをコメントアウトすると、それらがコンソールに表示されるので、コードに取り掛かっていることがわかります。
ありがとう。