小编chr*_*riv的帖子

IE抛出JavaScript错误:属性'googleMapsQuery'的值为null或未定义,而不是Function对象(适用于其他浏览器)

我在IE 9中遇到了JavaScript范围的真正问题.

这是在我的文档正文中(是的,我知道脚本应该在正确的HTML中,但我从来没有打破过脚本).该脚本在正文中,因为我不想弄乱只与此页面相关的脚本的共享页眉:

<script type="text/javascript">
function googleMapsQuery(accountNum) {
    // function code is here (omitted for brevity)
}
</script>
Run Code Online (Sandbox Code Playgroud)

这是在td块内部tr块内的tbody块内部table块内部form块内部body:

<button id="google-422111" onclick="googleMapsQuery(422111)" type="button">Google This!</button>
Run Code Online (Sandbox Code Playgroud)

我甚至将脚本块移到了表单上方,以防脚本函数声明的顺序相关(事实并非如此).

该脚本在FireFox和Chrome中运行完美,但在IE 9中(有或没有兼容性视图),我收到此错误:

SCRIPT5007:属性"googleMapsQuery"的值为null或未定义,而不是Function对象

我研究了JavaScript范围,我无法弄清楚为什么IE认为'googleMapsQuery'是一个属性,以及为什么它未定义.这是一个功能,我定义了它!

javascript runtime-error function undefined internet-explorer-9

12
推荐指数
2
解决办法
11万
查看次数