背景:
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) { }
}
});
官方文档解释:
官方文档的解释如下:
traditional
类型:Boolean
如果你想要用传统的方式来序列化数据,那么就设置为 true。
Set this to true if you wish to use the traditional style of param serialization
参考:
http://blog.****.net/ojackhao/article/details/24580437
https://my.oschina.net/i33/blog/119506