2012-02-11 8 views
41

Sto provando ad iniettare json nella mia app backbone.js. Il mio json ha " per ogni citazione.Come rimuovere " dal mio Json in javascript?

C'è un modo per me per rimuovere questo?
ho fornito un esempio riportato di seguito:

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

Perché non impedire che ciò accada in primo luogo? Al momento non hai affatto JSON, ma qualcosa che assomiglia un po 'a questo. –

+0

Stava codificando le virgolette. È un problema completamente diverso non correlato a Json, ma correlato a ASP.NET MVC. Potremmo voler cancellare questo post. – Frankie

risposta

86

Presumibilmente si hanno in una variabile e si utilizza JSON.parse(data);. In questo caso, l'uso:

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

Si potrebbe voler risolvere il vostro script JSON-scrittura, però, perché " non è valido per un oggetto JSON.

+1

Quando provo questo, ho visto il mio codice js cambiare: 'result.replace (/ "/g, '"') ' – efirat

+0

Questo è proprio quello di cui avevo bisogno, grazie! –

+0

@kirlisakal sei riuscito a risolvere questo problema ? – turbo2oh

5

La risposta accettata è giusta, tuttavia ho avuto un problema. Quando aggiungo nel mio codice, il controllo su debugger, ho visto che cambia da

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

a

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

Invece di questo io uso questo

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

Con questa notazione si lavori.

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

che dovrebbe analizzare tutti i valori codificati necessari.

+0

Grande trucco se hai bisogno di unescape di altri caratteri :) – Genaut

Problemi correlati