【发布时间】:2014-04-09 19:14:54
【问题描述】:
好的,这是我的问题。我有一个简单的 jQuery Ajax 请求,当我将 DataType 设置为“JSON”时,我无法正常工作。
var form_data = { "id": msg, "token": token };
$.ajax({
type: 'POST',
url: "ajax.php",
data: form_data,
dataType: 'json',
beforeSend:function(){
// this is where we append a loading image
},
success: function(data) {
var thing = JSON.parse(data);
$('.body-item').html(thing.b);
},
error: function() {
alert('error');
}
});
这实际上是我的 ajax 文件。 ajax.php 看起来像这样:
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
$foo = json_encode($arr);
echo $foo;
当我运行 jQuery 脚本时,我得到了 Firebug 的 200:OK 响应,当我查看响应时,我得到了以下信息:{"a":1,"b":2,"c":3,"d":4,"e":5}
但是我没有在 .body-item div 中显示任何内容,也没有尝试使用 alert()。
此外,如果我运行相同的代码而不使用:dataType: 'json' 部分,我会正确输出所有内容。
这可能是什么问题?
【问题讨论】:
-
试试 $('.body-item').html(data.b);
标签: javascript php jquery ajax json