是否可以告诉jQuery /一个AJAX调用以特定方式格式化查询字符串参数,而不仅仅是编写自己的序列化程序?
我有一个jQuery AJAX调用,并且正在传递一个包含URL参数的对象var params = {name: 'somename', favColors: ['red','blue']};
检查AJAX调用$.get("/Controller/Action/", params)
显示URL参数字符串为?name=somename&favColors[]=red&favColors[]=blue
目标网址希望查询参数不包含重复数组值的[],例如?name=somename&favColors=red&favColors=blue
谢谢!
最佳答案
您可以使用jQuery.param()
及其第二个参数traditional
,将结果提供给$.get()
:
var params = {name: 'somename', favColors: ['red','blue']};
$.get("/Controller/Action/", $.param(params, true))
该参数描述为:
一个布尔值,指示是否执行传统的“浅”序列化。
在这种情况下:
console.log($.param(params, true));
// "name=somename&favColors=red&favColors=blue"