ajax传递数组后台接收不到值的问题

时间:2024-04-21 14:36:04

背景:

JQGrid需要进行批量删除操作传给后台的是数组,结果后台接收不到值。

后台语言:java

原因:

ajax传递参数时,traditional 默认为false,JQuery会深度序列化参数对象,为了适应别的框架,但是Servelt API 无法处理,所以我们要设置 traditional 的值为ture,使其进行传统的序列化方式。

            $.ajax({
type: 'post',
url: '#',
traditional:true, //必须加!!!!!!需要这个值为true进行阻止深度序列化。
data:{'userids':userids,'roleid':roleid},
success: function(data) { }
}
});

  

ajax传递数组后台接收不到值的问题ajax传递数组后台接收不到值的问题

官方文档解释:

官方文档的解释如下:
traditional
类型:Boolean
如果你想要用传统的方式来序列化数据,那么就设置为 true。
Set this to true if you wish to use the traditional style of param serialization

ajax传递数组后台接收不到值的问题ajax传递数组后台接收不到值的问题

参考:

http://blog.****.net/ojackhao/article/details/24580437

https://my.oschina.net/i33/blog/119506