我有以下数组:
var idParam = ["1","2","3"];
我想使用jQuery.ajax
作为请求发送此数据,我正在做什么:
$.ajax({
type: "GET",
url: "Services/GetInfo.ashx",
data: { "id": idParam },
contentType: "application/text",
dataType: "json",
success: function(result)
{
...
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
...
}
});
但结果我有以下丑陋的字符串:?id[]=1&id[]=2&id[]=4
(实际上它更加丑陋:id%5B%5D=1&id%5B%5D=2&id%5B%5D=4
)。
如何获得正常的字符串:id=1&id=2&id=4
??
感谢
答案 0 :(得分:7)
我假设这是使用jQuery 1.4 - 您需要使用$.ajax()
的traditional: true
参数
或者您可以全局设置:(from $.param()
docs)
从jQuery 1.4开始,
$.param()
方法递归地序列化深层对象,以适应现代脚本语言和框架,如PHP和Ruby on Rails。您可以通过设置jQuery.ajaxSettings.traditional = true;
来全局禁用此功能。