我有一个jqGrid,它使用内联编辑来编辑单行,并使用navGrid
上的图标来处理添加和删除。它工作正常,只是在单击Add Dialog中的Submit按钮后,该行被添加,但对话框没有关闭。我已将closeAfterAdd: true
和closeAfterEdit: true
放在适当的位置(AFAIK),但添加对话框在提交后不会消失。我确信我遗漏了一些简单的东西,但是我已经搜索了维基,似乎无法找出遗漏的东西。以下是我的脚本代码:
$(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语句时,它们出现在控制台中,所以我知道我正在进入代码。
感谢。
答案 0 :(得分:1)
您应该尝试使用jqGrid的最后一个4.5.2版本。版本4.5.0包含一些使用closeAfterAdd
和clearAfterAdd
的错误。该错误已在4.5.1版本中修复(请参阅here)。