web-dev-qa-db-fra.com

SCRIPT5009: "JSON" n'est pas défini

L'erreur suivante s'affiche dans IE 9 SCRIPT5009: 'JSON' is undefined uniquement en mode de compatibilité. la ligne à l'origine de cette erreur est 

JSON.stringify(togObj.Answers)

L'erreur ne se produit pas dans ie (mode de non-compatibilité), Chrome ou Firefox. Une idée de ce qui se passe ici?

36
Tim Joyce

Voir ici pour un article de blog expliquant la situation: Résoudre JSON est une erreur non définie dans Internet Explorer

Incluez la bibliothèque JSON dans votre page et vous devriez être prêt à partir.

38
NakedBrunch

JSON est non disponible en mode de compatibilité IE :

Non pris en charge dans les modes de document suivants: Quirks, normes Internet Explorer 6, normes Internet Explorer 7.

Puisque vous ne devriez pas utiliser (ou pire, réutiliser) les modes de compatibilité en premier lieu, vous devez basculer IE en mode standard en ajoutant un doctype valide.

24
phihag

Oui, JSON est défini de manière native dans les navigateurs modernes, mais pas dans IE. Vous devez importer une bibliothèque. Par exemple, http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js

7
Joe

J'ai fait LOCAL Jquery ajouté en testant le code .NEt 2.0, cela fonctionne sans problème . Mais après avoir migré le code vers le serveur IIS v6, accédez au même navigateur IE, puis le problème apparaît " JSON "non défini. Après avoir lu cette recommandation, téléchargez le fichier json2.js et ajoutez-le au code source.

<script  type="text/javascript" src="json2.js"></script>

TOUT FONCTIONNE Bien.

Bien, merci.

2
rajar

Vous devez inclure json2.js 

voir json2 inclusion

pour plus de détails. Il existe des cas où nous devons traiter des cas où les clients utilisent les normes IE7. Donc, notre code devait aussi traiter de tels cas. Notre site Web de vente au détail est accessible à des centaines de clients qui utilisent les normes IE7. Y compris json2 résout ce problème 

0
Mohammed Rafeeq

Juste une mise à jour (2013!) Des liens fournis ci-dessus -

Per http://www.json.org/js.html , un lien en bas de la page vous renverra à la dernière mise en œuvre:

https://github.com/douglascrockford/JSON-js

0
Huy