Javascript 我需要将一个对象序列化为JSON。I';我正在使用jQuery。是否有一个“问题”;标准;如何做到这一点?
我需要将一个对象序列化为JSON。我正在使用jQuery。有没有一个“标准”的方法来做到这一点 我的具体情况:我有一个数组定义如下:Javascript 我需要将一个对象序列化为JSON。I';我正在使用jQuery。是否有一个“问题”;标准;如何做到这一点?,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我需要将一个对象序列化为JSON。我正在使用jQuery。有没有一个“标准”的方法来做到这一点 我的具体情况:我有一个数组定义如下: var countries = new Array(); countries[0] = 'ga'; countries[1] = 'cd'; ... 我需要将其转换为字符串以传递给$.ajax(),如下所示: $.ajax({ type: "POST", url: "Concessions.aspx/GetConcessions", da
var countries = new Array();
countries[0] = 'ga';
countries[1] = 'cd';
...
我需要将其转换为字符串以传递给$.ajax(),如下所示:
$.ajax({
type: "POST",
url: "Concessions.aspx/GetConcessions",
data: "{'countries':['ga','cd']}",
...
您可以使用JSON.stringify(国家)
请注意,您需要指定
contentType
;否则,将假定URI编码。您可以使用JSON.stringify()
将任何对象转换为JSON字符串:
var countries = new Array();
countries[0] = 'ga';
countries[1] = 'cd';
var json = JSON.stringify({ countries: countries}); // = '{"countries":["ga","cd"]}'
// or more simply:
var countries = [ 'ga', 'cd' ];
var json = JSON.stringify({ countries: countries}); // = '{"countries":["ga","cd"]}'
但是,您应该注意,更好的做法是为$的数据
属性提供一个对象,因为jQuery随后将为您创建JSON,同时转义任何无效字符并执行任何必需的编码。试试这个:
$.ajax({
type: "POST",
url: "Concessions.aspx/GetConcessions",
data: {
'countries': countries
}
});
您可以使用JSON.parse()将对象转换为JSON
像这样
countries=JSON.parse(国家)
对象转换为json并存储在国家变量中您的API是否期望应用程序/json
?如果没有,请使用。询问者希望答案是特定于jQuery的东西的赌注是什么?此解决方案不会将键名{'countries':
附加到结果中。亲爱的..我明白了
$.ajax({
type: "POST",
url: "Concessions.aspx/GetConcessions",
data: {
'countries': countries
}
});