捕获$ .getJSON错误

时间:2011-01-10 10:50:52

标签: javascript jquery json getjson

我一直试图弄清楚这几个小时。我有一个DYNAMIC youtube搜索,我使用Youtube的JSON api。它通常有效,但有时候它找不到任何东西。有没有办法弄清楚它是否找不到任何东西,然后结束该函数,否则它会停止整个代码。我试过jsonp,但这似乎不正确。在某处我读到错误捕获内置于最新的jQuery getJSON中,但我找不到它。

代码真的很乏味所以我宁愿不发布它,除非它涉及到它。我很感激任何帮助!谢谢你们。

错误显示json没有返回任何内容

jquery-1.4.4.min.js:32 TypeError:表达式'j'[undefined]的结果不是对象。

http://pastebin.com/4rVjAUwa

4 个答案:

答案 0 :(得分:1)

如果您需要捕获错误情况,请将$ .ajax与error属性一起使用:

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: callback,
  error: callback
});

答案 1 :(得分:1)

您是否尝试过使用jsonp或使用jQuery.get,然后解析输出,如果它不是什么?

答案 2 :(得分:0)

抱歉,但我没有权利发表评论。您无法使用json从远程服务器提取数据。你试过jsonp吗?它是

http://gdata.youtube.com/feeds/api/videos?max-results=5&alt=json&q=phish&callback=?

答案 3 :(得分:0)

我明白了,我所要做的就是:

if (data.feed.entry == null)

在.each()之前捕获错误。