2012-02-11 47 views
41

我正在嘗試將json注入到我的backbone.js應用程序中。我的json每個報價都有"如何從javascript中的Json中刪除"?

有沒有辦法讓我刪除它?
我在下面提供了一個示例:

[{"Id":1,"Name":"Name}] 
+3

爲什麼不阻止這種情況發生呢?目前你根本沒有JSON,但看起來有點像。 – 2012-02-11 23:07:59

+0

這是對報價進行編碼。這是與Json無關的完全不同的問題,但與ASP.NET MVC有關。我們可能要刪除這篇文章。 – Frankie 2012-02-11 23:18:21

回答

86

想必你擁有了它的一個變量,使用JSON.parse(data);。在這種情況下,使用:

JSON.parse(data.replace(/"/g,'"')); 

你可能想,雖然解決您的JSON-寫劇本,因爲"不是一個JSON對象有效。

+1

當我嘗試這個,我看到我的js代碼更改爲:'result.replace(/ "/g,'''''' – efirat 2016-09-06 11:09:23

+0

這正是我需要的,謝謝! – 2016-09-09 15:37:20

+0

@kirlisakal你能解決這個問題? – turbo2oh 2016-09-21 13:50:39

5

接受的答案是正確的,但我遇到了麻煩。 當我加入我的代碼,檢查在調試器,我看到它的變化從

result.replace(/"/g,'"') 

result.replace(/"/g,'"') 

取而代之的是我用這個

result.replace(/(&quot\;)/g,"\"") 

通過這個符號就作品。

1
var data = $('<div>').html('[{&quot;Id&quot;:1,&quot;Name&quot;:&quot;Name}]')[0].textContent; 

它應該解析所有您需要的編碼值。

+0

如果你需要unescape更多字符的話,那就太好了:) – Genaut 2018-01-03 10:47:26