2014-09-24 62 views
2

我從服務器獲取此JSONjQuery.parseJSON給錯誤意外的標記

"{"name": "abcd,e"abc"ssfgh", "location": {"latitude": 21.1484436189,"longitude": 79.093036862},"id": "12345"}" 

我知道問題在這個JSON是(「)的名稱。 的價值,但問題是我不能改變JSON(如?我從服務器獲取它) 所以現在如何解析它,我想這JSON字符串對象轉換

jQuery.parseJSON是給錯誤

編輯:。

這是我正在做的解析這個JSON字符串 var body_json = jQuery.parseJSON(JSONString);

+0

顯示你的代碼也。您需要在解析之前轉義引號。 – mithunsatheesh 2014-09-24 09:35:53

+1

發送一個有效的JSON應該是服務器的責任,否則你必須在js – leopik 2014-09-24 09:37:21

+0

var body_json = jQuery.parseJSON(JSONString)中做「討厭」的解決方法; – 2014-09-24 09:39:01

回答

0

更改爲這樣的:

'{"name": "abcd,e\'abc\'ssfgh", "location": {"latitude": 21.1484436189,"longitude": 79.093036862},"id": "12345"}' 

**更加註重\''{}' **

var str = '{"name": "abcd,e\'abc\'ssfgh", "location": {"latitude": 21.1484436189,"longitude": 79.093036862},"id": "12345"}'; 
 

 
var json = jQuery.parseJSON(str); 
 
$('div').text(json);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div>123</div>