2013-02-17 13 views
6

Afferrando InnerHtml di questo divOttenere token imprevisto: n durante l'analisi JSON in JavaScript

<div style="display:none;" id="graphdata">{n:2 , e:1},{from:1 , to:2},{from:2, to:3},{from:3, to:4}</div> 

allora l'analisi con questo JS codice

jdiv=document.getElementById('graphdata').innerHTML; 
edges=JSON.parse(jdiv); 

console JS in Chrome dice: SyntaxError Uncaught: Unexpected token n

non è possibile sapere dove si trova quel token n e cosa c'è di sbagliato nel mio codice? qualche idea?

+4

Bene, quello non è JSON valido. – Blender

risposta

12

È necessario citare le etichette e aggiungere staffe ...

[ 
    { 
     "n": 2, 
     "e": 1 
    }, 
    { 
     "from": 1, 
     "to": 2 
    }, 
    { 
     "from": 2, 
     "to": 3 
    }, 
    { 
     "from": 3, 
     "to": 4 
    } 
] 
+0

Che ha risolto completamente il problema Grazie! – lwiii

+0

a proposito, ecco un buon strumento :) http://jsonlint.com/ –

0

Puoi provare a prendere il valore, divisi si da '' per creare un array e utilizzare JSON.stringify per generare una corretta JSON. Da lì puoi usare JSON.parse e avere un oggetto

Problemi correlati