无法访问responseJSON对象

时间:2016-05-06 20:11:38

标签: javascript jquery ajax

我有以下代码,我想访问初始调用外部的json。

var crimes = $.getJSON('url');

console.log(crimes);

控制台使用" responseJSON"记录对象元素,但我无法访问它。代码:

console.log(crimes[responseJSON]);

返回错误,指出respponseJSON未定义。我需要在另一个中循环浏览这个大型数据集以便查看,所以我只想调用它一次,而不是每次都在后面的循环中调用它。如何访问responseJSON对象?

1 个答案:

答案 0 :(得分:1)

$.getJSON会返回jqXHR个对象,虽然它可能有responseJSON属性,但您无法以这种方式(或此时)访问它。您必须“等待”,直到浏览器执行Ajax请求。您可以将回调传递给$.getJSON,并在响应可用时调用。

来自jQuery documentation(改编):

$.getJSON( "ajax/test.json", function( data ) {
  // access data here
});
  

success回调传递返回的数据,该数据通常是JSON结构定义的JavaScript对象或数组,并使用$.parseJSON()方法进行解析。

您似乎不熟悉Ajax,所以您一定要阅读jQuery tutorial about Ajax.

另请参阅:How do I return the response from an asynchronous call?