Javascript 对象没有';不支持此属性或方法-IE 7/8
你知道为什么这在IE 7/8中不起作用吗?(在IE 9和10、FF和Chrome中工作良好) 单击“发送”按钮时,控制台显示:Javascript 对象没有';不支持此属性或方法-IE 7/8,javascript,Javascript,你知道为什么这在IE 7/8中不起作用吗?(在IE 9和10、FF和Chrome中工作良好) 单击“发送”按钮时,控制台显示: SCRIPT438: Object doesn't support this property or method script.1383689376.js, line 94 character 3 (Line 94) : token = $("#token").val(); HTML: 这行HTML: <input type="hidden" name="t
SCRIPT438: Object doesn't support this property or method
script.1383689376.js, line 94 character 3
(Line 94) : token = $("#token").val();
HTML:
这行HTML:
<input type="hidden" name="token" id="token" value="'.$_SESSION['token'].'">
您有一个未声明的标识符。当执行这一行时,IE尝试创建一个全局变量标记(由于未声明的变量),但由于已经有一个(前面提到的DOM元素),IE抛出一个错误
为什么IE不简单地分配新的值是一个十多年来一直被问到的问题,你不会得到一个合理的答案
简单的解决方法是声明所有变量
使用函数表达式分配给未声明的变量尤其糟糕。与函数声明相比,它没有任何好处,并且有一些严重的缺点(您刚刚发现了一个)。因此,除非您有很好的理由使用函数表达式,否则请始终在适当的范围内声明变量并始终使用函数声明。这一行HTML:
<input type="hidden" name="token" id="token" value="'.$_SESSION['token'].'">
您有一个未声明的标识符。当执行这一行时,IE尝试创建一个全局变量标记(由于未声明的变量),但由于已经有一个(前面提到的DOM元素),IE抛出一个错误
为什么IE不简单地分配新的值是一个十多年来一直被问到的问题,你不会得到一个合理的答案
简单的解决方法是声明所有变量
使用函数表达式分配给未声明的变量尤其糟糕。与函数声明相比,它没有任何好处,并且有一些严重的缺点(您刚刚发现了一个)。因此,除非您有很好的理由使用函数表达式,否则请始终在适当的范围内声明变量并始终使用函数声明。是否
$==jQuery
?是否正在使用jQuery.noConflict()
?那么,您使用的是什么版本的jQuery?如果您正在尝试jQuery2.x,那么它是正确的。我使用的是jQuery1.8.3-我听说1.10.x与旧浏览器有问题。另外,没有使用jQuery.noConflict()。1.10.x应该可以与旧浏览器配合使用。但是,可能不适用于较旧的插件,因为它们可能正在使用一些来自早期版本的API?是否正在使用jQuery.noConflict()
?那么,您使用的是什么版本的jQuery?如果您正在尝试jQuery2.x,那么它是正确的。我使用的是jQuery1.8.3-我听说1.10.x与旧浏览器有问题。另外,没有使用jQuery.noConflict()。1.10.x应该可以与旧浏览器配合使用。但是,可能不适用于较旧的插件,因为它们可能正在使用一些来自早期版本的API。
<input type="hidden" name="token" id="token" value="'.$_SESSION['token'].'">
token = $("#token").val();