我试图根据this question使用jqgrid的休息服务,我想设置" DELETE"我的所有网格的metod,但jqgrid仍然使用POST作为发送删除请求的方法。我是这样做的:
$.extend($.jgrid.del, {
mtype: "DELETE"});
这是我在navGrid中的网格实例删除选项:
{
url: '../../webresources/routing/phoneNumber',
serializeDelData: function () {
return ""; // don't send and body for the HTTP DELETE
},
onclickSubmit: function (params, postdata) {
params.url += '/' + encodeURIComponent(postdata);
},
errorTextFormat: function (data) {
return 'Error: ' + data.responseText;
}
}
如果我设置了mtype:" DELETE"在navGrid删除选项中,它按预期工作。
答案 0 :(得分:0)
我想您将声明$.extend($.jgrid.del, { mtype: "DELETE"});
放在了错误的地方。此外,使用$.extend
的非深度版本也很危险。我建议你使用
$.extend(true, $.jgrid.del, { mtype: "DELETE"});
代替。此外,您可以将mtype: "DELETE"
直接放在navGrid
的删除选项列表中。
请在所有问题中始终写下您使用的jqGrid版本以及jqGrid(free jqGrid,Guriddo jqGrid JS或版本中的旧jqGrid <= 4.7)的哪个版本我开发了免费的jqGrid fork,因为它已经实现了很多新功能。一些新功能简化了RESTful服务的使用。请参阅the answer,其中显示了如何使用url
定义为删除操作的函数,并使用url
和mtype
定义为添加/编辑功能。