2017-04-10 28 views
0

工作,我想讀的使用jQuery的方法的getJSON本地JSON文件,所以我寫下面的代碼來讀取,但控制檯日誌在Firefox工作正常,並顯示輸出,但在Chrome中不工作。 對鉻我得到這個錯誤:的Jquery的getJSON無法在Chrome

Request Failed: parsererror, SyntaxError: Unexpected token } in JSON at position 951 

這裏是我寫的代碼:

$(document).ready(function(){ 

     $.getJSON('http://localhost/page2/data/cd.json',function(data){ 
      alert("success"); 
      console.log(data); 
     }) 
     .fail(function(jqxhr, textStatus, error) { 
      var err = textStatus + ", " + error; 
      console.log("Request Failed: " + err); 
     }); 



    }); 

我主持的XAMPP本地服務器, 我還要檢查JSON文件驗證此文件。 該文件是有效的JSON文件。

+1

你能確認你的JSON是一個有效的像'{「鍵」:「值」}' – Jai

+0

我不知道,你是如何驗證你的JSON,但你可以請檢查它在HTTP ://jsonlint.com/ – agpt

+0

是文件vaildate使用jsonlint.com –

回答

0

傢伙,我得到了一些奇怪的事情, 這裏是我的JSON文件

{ 
    "country": { 
     "city": { 
      "1": "A", 
      "2": "B" 
     }, 
     "cars": { 

     } 
    } 
} 

這裏型車細分市場並沒有因此我把它空,當我檢查這個上JSONLint.com任何價值,它說這是有效的JSON 。 Firefox也不會顯示任何錯誤,但是Chrome會顯示。所以我爲後續車型增加了新的關鍵價值。

{ 
    "country": { 
     "city": { 
      "1": "A", 
      "2": "B" 
     }, 
     "cars": { 
      "1": "none" 
     } 
    } 
} 

並開始使用chrome。任何人都可以解釋爲什麼它無效到鉻?但有效到Firefox。

0

您的測試JSON數據正常工作與鉻,後刪除所有「回車」 你可以用JSON測試.parse('{「country」:{「city」:{「1」:「A」,「2」:「B」},「cars」:{}}}');在鉻控制檯。 enter image description here

根據spec,它允許使用空對象作爲值。 謝謝, 永

+0

如果你的數據是敏感的,你可以使用這個JSON驗證:http://www.datatoolkits.com/json/validation.html,它證明了JSON數據在瀏覽器端。 – Yong