jQuery经过ajax传送数组

最近在用jQuery的ajax方法发送请求时须要发送一个数组做为参数,结果在后台接收的时候发现接收不到这个数组。代码时这样的:
html

var arr = []
arr.push(“aaa”);
arr.push(“bbb”);
arr.push(“ccc”);
$.ajax({
    url:”a.html”,
    data:{“arr”:arr},
    type:”post”
});

查看firebug的网络信息,发现发送的post信息中的数组信息为&arr[]=aaa&arr[]=bbb&arr[]=ccc。多了一对方括号,因此在servlet中不能经过request.getParameter(‘arr’)获取到正常的数组参数。

google以后发现,须要在data参数里,加一个traditional:true的参数,这样就能正常发送数组参数了。
缘由时从1.4之后,jQuery改变了参数的序列化方法。 ajax

相关文章
相关标签/搜索