jQuery getJSON函数返回null,但是,正如我所看到的,一切都是正确的:
$.getJSON("/site/ajax/autocomplete/key", function(data) {
alert(data); //null
alert(data.term); //null
});
Yii-framework PHP后端:
public function actionAutocomplete($key) {
/*some_code*/
header('Content-Type: application/json');
return json_encode($autocomplete);
}
返回带结构的有效JSON:
[{"url":"/bla/bla","name":"Bla Bla"}]
这个json的print_r
工作正常。
我错过了什么?
答案 0 :(得分:1)
问题是print_r
显示变量信息 - 它不是echo
,所以不是一个有效的JSON结构(这可能是为什么它没有显示任何东西,考虑到你发送的标题)。你应该直接die($json);
,所以你只需将json字符串发送到浏览器。