Mon formulaire dans le DOM html est une case à cocher à cliquer (il peut y en avoir plusieurs). Le problème se produit dans la chaîne de description lorsque j'utilise une apostrophe, car mon objet liste est délimité par une seule citation. Ceci est l'une des cases sous la forme:Comment stringifier JSON en tableau JavaScript
<input type="checkbox" id="cbx" name="cbx" value="{'getPic': 'url', 'picsrc': 'http://lh3.ggpht.com/_ZB3cttqooN0/SVmJPfusGWI/AAAAAAAADvA/GuIRgh6eMOI/Grand%20Canyon%201213_121508214.JPG', 'pos': None, 'description': 'Here's what it REALLY looks like at 5:30am! Bring your headlight!'}">
Le javascript qui lit les valeurs des cases cochées et les pousse dans un tableau (liste):
var pylist = [];
for (i=0; i<document.picList.cbx.length; i++) {
if (document.picList.cbx[i].checked) {
pylist.push(document.picList.cbx[i].value);
}
}
var getstr = JSON.stringify(pylist);
Le problème est toujours getstr à ce stade a coupé tout everthing après la citation unique dans la propriété de description. J'ai essayé différentes façons d'échapper à peu d'avantages.
Pour référence, ceci n'est pas valide JSON. Les chaînes doivent être entre guillemets, et tout sérialiseur JSON conforme décemment le fera. – cHao