我不知道它是由jQuery还是我的脚本引起的。这是Internet Explorer 9给出错误的地方:
parseJSON: function( data ) {
// Attempt to parse using the native JSON parser first
if ( window.JSON && window.JSON.parse ) {
return window.JSON.parse( data ); <<< this the "Invalid Character" err.
}
这是我的javascript代码
从我的研究中我还检查了我的DOCTYPE。他们在谈论Quirks模式,所以我也尝试放x-ua-compatible
但没有改变
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" > <!-- IE9 mode -->
blabla
为什么ie9会给出jQuery的无效字符错误?而不是firefox或webkit。哦,就像我使用jQuery 1.9.1。
答案 0 :(得分:1)
这似乎是jQuery库中的一个错误。 This post包含为修补程序添加/修改的代码。基本上只需在尝试解析之前移动null
的检查并添加undefined
的检查。那么方法的开头应该是这样的......
parseJSON: function( data ) {
if (data === undefined) {
return data;
}
if (data === null) {
return data;
}
// Attempt to parse using the native JSON parser first
if ( window.JSON && window.JSON.parse ) {
return window.JSON.parse( data );
}
...
我已在IE10和Chrome中验证过此修复程序。