为什么$ .getJSON在这种情况下不起作用

时间:2012-09-06 08:05:19

标签: jquery

我使用jQuery的getJSON编写了一个ajax请求,如下所示

 $.getJSON('bDays.json', function (bDy) { // This file exists in same folder path
      alert(1); // It is not executed..                     
 });

即使我将代码更改为获取.txt文件..它无法正常工作..请告诉我代码可能出现的问题

4 个答案:

答案 0 :(得分:2)

getJSON使用get HTTP请求来检索json编码数据,它不会从本地驱动器打开文本文件。

JSON数据应托管在网络服务器上,然后您可以引用其完整的URL。

答案 1 :(得分:1)

检查您是否在document.ready()处理程序中编写代码。

$(function() {
  $.getJSON('bDays.json', function (bDy) { 
      alert(1);          
 });
});

有一件事,$.getJSON()无法解析或打开文本文件。

答案 2 :(得分:1)

回调函数是第三个​​参数:

 $.getJSON('bDays.json', null, function (bDy) { 
      alert(1);                    
 });

另外,请尝试使用完整网址而不是文件名。

答案 3 :(得分:1)

以下是一些尝试:

  1. 正如其他人所指出的,bDays.json必须可以通过HTTP请求访问。请尝试使用其完整网址替换'bDays.json'来电中的getJSON
  2. 确保bDays.json包含有效的JSON(通过验证程序运行,例如this one,以确定它是否不明显)。该文件需要是有效的JSON,如documentation

    中所述
      

    从jQuery 1.4开始,如果JSON文件包含语法错误,请求通常会以静默方式失败。