我正在尝试通过PHP中的数组来掌握如何使用$.getJSON。
这里有一个简单的例子,我想要做的就是输出请求的信息。alert(data)应该返回数组对象吗?我没有提醒任何人。
PHP文件(account.php):
$arr = array('items' => 5,'others' => 6);
echo $arr = json_encode($arr)HTML文件:
$("#unsubscribe").click(function() {
$.getJSON("account.php?", function(data) {
alert(data);
});
}); 发布于 2012-04-18 00:01:09
首先,如果您尝试在浏览器中加载account.php,这可能是一个好主意。您应该会看到:
{"items":5,"others":6}但是,您不会看到这一点。您将看到一个解析错误,预期为;。因为你忘在echo线路上了。
这就是为什么您看不到alert的原因。PHP错误显然不是有效的JSON,查看浏览器的错误控制台会告诉您这一点;)
发布于 2012-04-18 00:15:03
在我的项目中,我使用dump函数来查看json返回的数组。这就是它:
function dump(arr,level) {
var dumped_text = "";
if(!level) level = 0;
//The padding given at the beginning of the line.
var level_padding = "";
for(var j=0;j<level+1;j++) level_padding += " ";
if(typeof(arr) == 'object') { //Array/Hashes/Objects
for(var item in arr) {
var value = arr[item];
if(typeof(value) == 'object') { //If it is an array,
dumped_text += level_padding + "'" + item + "'"+"\\n";
if (level < 0)
dumped_text += dump(value,level+1);
} else {
dumped_text += level_padding + "'" + item + "' => '" + value + "'"+"\\n";
}
}
} else { //Stings/Chars/Numbers etc.
dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
}
return dumped_text;
}https://stackoverflow.com/questions/10194720
复制相似问题