SCRIPT5009:'JSON'未定义

时间:2011-11-30 20:15:10

标签: javascript json internet-explorer

仅在兼容模式下,我在IE 9 SCRIPT5009: 'JSON' is undefined中收到以下错误。导致此错误的行是

JSON.stringify(togObj.Answers)

在ie(非兼容模式),Chrome或Firefox中不会发生错误。 知道这里发生了什么吗?

7 个答案:

答案 0 :(得分:39)

请点击此处查看解释情况的博文:Resolve JSON is Undefined Error in Internet Explorer

在您的页面中加入JSON library,您应该好好去。

答案 1 :(得分:24)

JSON是not available in compatibility mode IE

  

以下文档模式不支持:Quirks,Internet Explorer 6标准,Internet Explorer 7标准。

由于您不应该首先使用(或更糟糕的是,重新设置)兼容模式,因此您应该通过添加有效的doctype将IE切换到标准模式。

答案 2 :(得分:7)

是的,JSON在现代浏览器中本地定义,但在IE中不定义。您需要导入库。例如,http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js

答案 3 :(得分:2)

我做了LOCAL Jquery添加.NEt 2.0代码测试,它没有任何问题,工作正常。 但是在将代码迁移到IIS v6服务器然后从相同的IE浏览器访问之后,问题显示为“JSON”未定义。 阅读此建议后,下载文件json2.js并在下面添加到源代码中。

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

一切正常。

很好,谢谢你。

答案 4 :(得分:0)

只是更新(2013年!)上面提供的链接 -

根据http://www.json.org/js.html,页面底部的链接会引导您进入最新实施:

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

答案 5 :(得分:0)

您需要包含json2.js

请参阅json2 inclusion

了解更多详情。在某些情况下,我们必须处理客户使用IE7标准的情况。所以我们的代码也必须迎合这种情况。数百名使用IE7标准的客户访问我们的零售网站。包括json2解决了这个问题

答案 6 :(得分:-1)

如果您在页面上使用jQuery库,则可以使用$.parseJSON