作者:mobiledu2502884897 | 来源:互联网 | 2023-05-19 06:11
今天在做ajax的时候突然发现一个问题,以前在用Jquery1.3的时候都正常的方法结果现在都不行。
firebug中发现我要的数据已经返回,而且数据显示正常,但是前台取值一直都提示undefined。
找了好久资料才找到原因。
Jquery1.4中对JSON数据格式进行了严格限制,原先在Jquery1.3中能用的格式现在都不能使用
原数据格式
{
isOk:true,
msg:'传输成功'
}
解决方法:
标准的json格式,要求对字符串都使用""限定,修改后的内容为:
{
“isOk”:true,
"msg":"传输成功"
}
//ajax数据接收示例
var dat={id:"123456",name:"over"};
$.ajax({
type: "POST",
url: "/Test.ashx",
data: dat,
dataType: "json", //此处要添加数据类型
success: function(data) {
if (data.isOk == true) {
alert(data.msg);
} else {
alert(data.msg);
}
},
error: function() {
alert("信息提交失败");
}
});
$.post("/Test.ashx", dat, function(data) { alert(data.isOk); },"json");//post方法中,最后要添加一个数据类型"json"
备注:网上还有一种方法,就是修改Jquery源文件。参考http://cleaneyes.javaeye.com/blog/663883
如果您喜欢我写的博文,读后觉得收获很大,不妨小额赞助我一下,让我有动力继续写出高质量的博文,感谢您的赞赏!!!