我正在进行这个AJAX调用:
let g = $.get("http://api.tvmaze.com/search/shows?q=seinfeld", {dataType: 'json'});
如果我尝试拨打g.responseJSON
,期待一组对象,我会undefined
。
但是如果我将g
记录到控制台,我可以清楚地看到它是一个带有responseJSON属性(对象数组)的对象。如果我右键单击该对象并将其绑定到Chrome的devtools中的临时变量,请在 上调用.responseJSON
。
我对此完全感到困惑,我想不出有任何理由会发生这种情况。我清楚地看到该属性存在,它存在于副本中,为什么它不能在这里工作?
答案 0 :(得分:1)
$.get
返回jqxhr对象,因此如果您想从服务器访问响应,您可以订阅.done
事件,在此事件中您将获得实际的服务器响应:
g.done(function(response) {
alert(response);
});
当收到服务器的实际响应时,将在稍后阶段调用该事件。