blo*_*lop 7 ajax jquery json decode
我正在尝试使用jQuery解码JSON.这是我得到的(例如一个班级,这里有一个学生):
"{"Students":[{"Name":John,"Grade":17,}],"TotalClass":17,"TotalCount":1,}"
Run Code Online (Sandbox Code Playgroud)
这就是我的所作所为:
$j.ajax({
type: 'POST',
url: 'class.aspx/getClass',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (msg) {
$j.each(msg, function (index, element) {
alert(element.TotalClass);
});
},
});
Run Code Online (Sandbox Code Playgroud)
它一直在警告中说未定义(但我收到了正确的JSON).知道我做错了什么吗?
{"Students":[{"Name":John,"Grade":17,}],"TotalClass":17,"TotalCount":1,}
Run Code Online (Sandbox Code Playgroud)
是无效的JSON!
假设你有一个有效的JSON这样
{
"Students": [
{
"Name": "John",
"Grade": "17"
}
],
"TotalClass": " 17",
"TotalCount": "1"
}
Run Code Online (Sandbox Code Playgroud)
您可以像这样访问这些值
alert("TotalClass : "+msg.TotalClass);
//loop thru students
$.each(msg.Students,function(index,item){
alert(item.Name+ " - "+item.Grade)
});
Run Code Online (Sandbox Code Playgroud)
工作样本:http: //jsfiddle.net/ncbLF/5/
使用jsonlint验证JSON
所以你的代码可以简化为
$.getJSON("class.aspx/getClass",function(msg){
alert("TotalClass : "+msg.TotalClass);
$.each(msg.Students,function(index,item){
alert(item.Name+ " - "+item.Grade)
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32781 次 |
| 最近记录: |