2016-04-16 44 views
0

我在同一個文件夾中的兩個文件作爲我的HTML文件和主要的Javascript文件:爲什麼我的JQuery get()函數不適用於JSON url,但是適用於非JSON url?

hello.js 
hello.json 

這裏是我的HTML:

<!DOCTYPE html> 
<html> 
    <head></head> 
    <body> 
     <script type="text/javascript" src="jquery-1.12.1.js"></script> 
     <script type="text/javascript" src="page.js"></script> 
    </body> 
</html> 

這是我的主要的Javascript(即,不打招呼。 js文件):

$(document).ready(function() { 
    $.get("hello.js", function(response) { 
    console.log("Hello") 
    }); 
}); 

正如你所看到的,這是一些非常複雜的代碼。如上所示,Javascript可以很好地在控制檯上打印出「Hello」。當我將「hello.js」更改爲「hello.json」時,什麼都不打印。我嘗試了幾個不同的JSON文件,沒有任何工作。

我不認爲這很重要,因爲數據實際上沒有被解析,但我確實驗證了hello.json中的JSON數據格式正確。

+1

也許你的服務器不提供json文件?你能給我們一個網址來測試這個嗎? – argaz

+2

您是否在任何瀏覽器上檢查了開發人員工具中的網絡面板? (應該可以在大多數主流瀏覽器中使用F12打開它)。這應該告訴你是否正在進行請求,如果是,服務器將返回什麼響應。這將有助於縮小範圍。 – David784

回答

0

嘗試使用$.getJSON()而不是$.get()來檢索JSON文件,或嘗試在使用$.get()檢索JSON文件時將dataType指定爲JSON。這可以工作。

+0

應該不重要,'$ .getJSON'只是數據類型設置爲JSON的'$ .get'的快捷方式。 – adeneo

相關問題