2012-09-06 120 views
2

工作,我已經寫了使用jQuery的一個的getJSON Ajax請求像下面

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

即使我更改代碼即可獲得.txt文件..這是行不通的。 。請讓我知道可能是我的代碼問題

+0

請更新問題,包括包含JavaScript和JSON文件的文件的完整URL(他們並不需要公開訪問,我們只關心路徑)。另外,您是否可以確認'bDays.json'包含有效的JSON? –

回答

1

這裏有幾件事情要嘗試:

  1. 正如其他人所指出的,bDays.json必須通過HTTP請求進行訪問。嘗試用您的完整網址替換您的getJSON調用中的'bDays.json'
  2. 確保bDays.json包含有效的JSON(通過驗證程序運行,例如this one,以確定它是否不明顯)。該文件必須是有效的JSON,如documentation說:

    對於jQuery 1.4,如果JSON文件包含語法錯誤,請求通常會失敗默默。

2

getJSON使用get HTTP請求來檢索json編碼的數據,它不會從本地驅動器打開文本文件。

JSON數據應託管在網絡服務器上,然後可以引用其完整URL。

+0

我試圖使用$ .get方法檢索.txt文件。謝謝 – Exception

1

檢查您是否在document.ready()處理程序中編寫代碼。

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

一件事,$.getJSON()無法解析或打開一個文本文件。

+0

我試圖使用$ .get方法檢索.txt文件。謝謝 – Exception

1

回調函數是一個第三參數:

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

另外,請嘗試使用,而不只是文件名的完整URL

+2

似乎並不如此。在http://api.jquery.com/jQuery.getJSON/ –

+0

查看示例函數定義是'jQuery.getJSON(url [,data] [,success(data,textStatus,jqXHR)])''。也許jQuery正在檢查傳遞的第二個參數的類型,如果它是一個函數將其視爲回調參數。 –

相關問題