无法使用loadonce刷新jqgrid:true

我创建/编辑/删除行后,显然需要从服务器刷新网格。 我已经检查了所有关于重装的Oleg’s aswers,我仍然无法使其工作。 我究竟做错了什么? 为什么这么简单的事情必须如此复杂。

我还想在发布后关闭表格..但这是下一步

这是我的代码:

$(function(){ var roles = null; $.ajax({ 'async': false, 'global': false, 'url': '', 'dataType': 'json', 'success': function (data) { roles = data; } }); var comptes=$("#Comptes"); comptes.jqGrid({ url:'', mtype : "post", datatype: "json", colNames:['Nom','Prenom','Email','Utilisateur','Telephone', 'Password','Role'], colModel:[ {name:'first_name',index:'first_name',editable:true, editrules: { required: true }, edittype:'text',search:false, align:"center"}, {name:'last_name',index:'last_name',editable:true, edittype:'text', editrules: { required: true }, search:false, align:"center"}, {name:'email',index:'email',editable:true, editrules: { required: true }, edittype:'text',search:false, align:"center"}, {name:'username',index:'username',editable:true, editrules: { required: true }, edittype:'text',search:false, align:"center"}, {name:'phone',index:'phone',editable:true, editrules: { required: true }, edittype:'text',search:false, align:"center"}, {name:'password',index:'password',editable:true, hidden:true, editrules: { edithidden:true }, edittype:'password',search:false, align:"center"}, {name:'role',index:'role', editable:true, editrules: {required: true}, edittype:'select', search:true, stype:'select', searchoptions:{ value:roles}, editoptions:{ value:roles}} ], rowNum:10, jsonReader: { root: "rows", page: "page", total: "total", records: "records", repeatitems: false, id: "id", userdata: "userdata" }, width: 850, height: "100%", rowList:[10,20,30], pager: '#pager', sortname: 'id', viewrecords: true, loadonce:true, rownumbers: true, gridview: true, pagination:true, editurl: "", caption:"" }).navGrid('#pager', {edit:true, add: true, del:true,refresh:false}, { // edit options beforeShowForm: function(frm) { comptes.jqGrid('setColProp', 'password', {editrules: {required: false}}); } }, { // add options beforeShowForm: function(frm) { comptes.jqGrid('setColProp', 'password', {editrules: {required: true}}); } }); comptes.jqGrid('navGrid', '#pager', {refresh: false}, { // Edit options afterSubmit: function () { $(this).jqGrid('setGridParam', {datatype:'json'}); return [true,'']; // no error } }, { // Add options afterSubmit: function () { $(this).jqGrid('setGridParam', {datatype:'json'}); return [true,'',false]; // no error and no new rowid } }, { // Delete options afterSubmit: function () { $(this).jqGrid('setGridParam', {datatype:'json'}); return [true,'']; // no error } } ); }); 

似乎参数错误。 正确的寻呼机参数将是:

 .navGrid('#pager', {edit:true, add: true, del:true,refresh:false}, { // edit options beforeShowForm: function(frm) { comptes.jqGrid('setColProp', 'password', {editrules: {required: false}}); }, afterSubmit: function() { comptes.jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid'); return [true,'',false]; // no error and no new rowid } }, { // add options beforeShowForm: function(frm) { comptes.jqGrid('setColProp', 'password', {editrules: {required: true}}); }, afterSubmit: function() { comptes.jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid'); return [true,'']; // no error } } , { // delete options afterSubmit: function() { comptes.jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid'); return [true,'']; // no error } } );