如何将jqgrid中编辑的多行传递给服务器控制器?
我是 jqgrid 的新手。
我想传递在 jqgrid 中编辑的多行来传递 MVC 服务器控制器。 控制器需要 json 字符串类型的数据。
我的jsp如何将所有行传递给控制器?
jQuery("#save").click( 函数(){ 警报(“输入保存fn”);
var gridData=jQuery("#gridList").jqGrid('getGridParam','data');
jQuery.ajax({
url : '/uip/web/p2/saveEmployeeList.dev'
,type : 'POST'
,cache : false
,data : JSON.stringify(gridData)
,contentType : 'application/json; charset=utf-8'
,dataType : 'json'
})
});
我在控制器中打印出 HttpServletRequest 。存在一排。
即使是一点点线索也会有帮助。
I'm new in jqgrid.
I want to pass multi rows edited in jqgrid to pass MVC server controller.
controller expects json string type of data.
how my jsp pass all rows to controller?
jQuery("#save").click( function(){
alert("enter save fn");
var gridData=jQuery("#gridList").jqGrid('getGridParam','data');
jQuery.ajax({
url : '/uip/web/p2/saveEmployeeList.dev'
,type : 'POST'
,cache : false
,data : JSON.stringify(gridData)
,contentType : 'application/json; charset=utf-8'
,dataType : 'json'
})
});
I print out HttpServletRequest in controller. there is one row exist.
even little clue would be helpful.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果我理解正确的话,您希望在编辑任何行后通过一个 Ajax 操作而不是 Ajax 请求保存所有编辑的行?
如果是这样,这可能是解决方案。您可以在配置中使用“clientArray”选项作为 URL 参数,而不是使用 Ajax。这会导致 jqGrid 在 JavaScript 内部保存每个已编辑的行,并且不会向服务器发布任何内容。
通过单击保存按钮,您可以执行以下操作:
同样重要的是在网格中指定保存事件:
您可能应该修改或优化某些内容,但在基本情况下,这应该有效或让您了解如何完成你想要什么。
If I understand you correctly you want to save all edited rows by one Ajax action instead of a Ajax request after any row is edited?
If so, this might be the solution. Instead of Ajax you use the 'clientArray' option in your configuration as your URL parameter. This causes jqGrid to save every edited row internally in JavaScript and post nothing to your server.
With a onclick on a save button you could do something as follows:
Also important is to specify a save event in your grid:
You might should modify or optimize some things but in the basic, this should work or give you an idea how to accomplish what you want.