我的jQuery.ajax返回JSon对象.我首先阅读其他文章.但他们的回应文字不喜欢我的. 我的回复内容:来自萤火虫响应
{"item":"[{\"country\":\"USA\",\"lan\":\"EN\"},{\"country\":\"Turkiye\",\"lan\":\"TR\"}]"}
Run Code Online (Sandbox Code Playgroud)
现在我试图提醒countryName:
$('#loadData').click(function() {
$.ajax({
type: "POST",
url: "WS/myWS.asmx/getDaa",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
$("#jsonResponse").html(msg);
$.each(msg.item, function(i, d) {
alert(this.country);
debugger;
});
},
});
});
Run Code Online (Sandbox Code Playgroud)
但它警告"未定义"
item的值是一个字符串.因此,您首先需要将其解析为json.试试这个.
$("#jsonResponse").html(msg);
var item = jQuery.parseJSON(msg.item)
$.each(item, function(i, d) {
alert(this.country);
debugger;
});
},
Run Code Online (Sandbox Code Playgroud)
{"item":"[{\"country\":\"USA\",\"lan\":\"EN\"},{\"country\":\"Turkiye\",\"lan\":\"TR\"}]"}
^
|
+---- It's a string, not an array !
Run Code Online (Sandbox Code Playgroud)
你的JSON应该是这样的
{"item":[ {"country":"USA","lan":"EN"},{"country":"Turkiye","lan":"TR"}]}
Run Code Online (Sandbox Code Playgroud)
然后你就可以像访问它一样
country = msg.item[0];
lang = country.lan;
for (i=0; i< item.length; i++) { alert ( item[i].country); }
Run Code Online (Sandbox Code Playgroud)
等等...