function bar() {
$.ajax("jquerytest.html", {
data : {
choices : [ "a", "b", "c" ]
}
});
}
这个方法调用以后,在浏览器控制台里,发现提交的url是jquerytest.html?choices%5B%5D=a&choices%5B%5D=b&choices%5B%5D=c,
这是因为在ajax发送请求之前,会调用jQuery.param()把data转换成字符串,choices是个数组,在jquery 1.4以后,就变成了choices%5B%5D=a&choices%5B%5D=b&choices%5B%5D=c的样子.
但是这样在后台就找不到"choices"这个请求参数了.
不过可以用traditional这个参数控制一下.
function bar() {
$.ajax("jquerytest.html", {
data : {
choices : [ "a", "b", "c" ]
},
traditional : true
});
}
url终于变成了jquerytest.html?choices=a&choices=b&choices=c