只有在兼容模式下,IE 9 SCRIPT5009: 'JSON' is undefined
中出现以下错误。导致此错误的行是SCRIPT5009:'JSON'未定义
JSON.stringify(togObj.Answers)
中不会发生,即(非兼容模式)错误,Chrome或Firefox。 任何想法这里发生了什么?
只有在兼容模式下,IE 9 SCRIPT5009: 'JSON' is undefined
中出现以下错误。导致此错误的行是SCRIPT5009:'JSON'未定义
JSON.stringify(togObj.Answers)
中不会发生,即(非兼容模式)错误,Chrome或Firefox。 任何想法这里发生了什么?
在这里看到一篇博客文章中解释了情况:Resolve JSON is Undefined Error in Internet Explorer
在你的页面包含的JSON library,你应该是好去。
是的,JSON是在现代浏览器中本地定义的,但不在IE中定义。你需要导入一个库。例如,http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js
JSON是not available in compatibility mode IE:怪癖,因特网浏览器6级的标准,Internet Explorer 7的标准:
在以下文档模式不支持。
由于您不应该使用(或更糟的是,上reyling)首先兼容模式,则应该通过添加有效的文档类型切换IE到标准模式。
如果您在页面上使用jQuery库,则可以使用$.parseJSON
。
不起作用,因为jQuery使用JSON。解析 –
@FilipCornelissen:http://api.jquery.com/jQuery.parseJSON/它需要1.4.1的jQuery版本。另外,验证你的json是否正确。尝试将一个演示json字符串传递给此函数并进行验证。来自同一页面的 – iMatoria
:“在浏览器提供JSON.parse的本地实现的地方,jQuery使用它来解析字符串。”和(简化)来自http://code.jquery.com/jquery-latest.js:'parseJSON:function(data){return window.JSON.parse(data); }”。 结论,在IE8或更低版本中不起作用。 –
只是一个更新(2013!)到上文
每http://www.json.org/js.html,在页面的底部会向您推荐最新执行的链接提供的链接:
你需要包括json2.js
了解更多详情。有些情况下我们必须处理客户使用IE7标准的情况。所以我们的代码也不得不迎合这种情况。我们的零售网站被数百个使用IE7标准的客户访问。包括json2解决了这个问题
我已经完成LOCAL Jquery添加.NEt 2.0代码测试,它工作正常没有任何问题。 但是,将代码迁移到IIS v6服务器后,从相同的IE浏览器访问,然后问题出现“JSON”未定义。 阅读完此建议后,将文件json2.js下载并添加到源代码中。
<script type="text/javascript" src="json2.js"></script>
所有工作都很好。
好谢谢。
看来'JSON'对象没有被定义。查看用于添加JSON支持的http://json.org/js.html。 –
谢谢你,这很容易! –