Javascpt问题:SCRIPT5007: 无法获取未定义或 null 引用的属性“b” ;代码如下:

<html>
<head onload="init()">
<title>test</title>

</head>
<script language="javascript">
document.f.b.onClick=function(){//此处在获取不到onclick参数
alert("Thanks!");
}
</script>

<body>
<form name="f" >
<input type="button" value="Click Me!" name="b" />
</form>
</body>
</html>

把script标签放到</body>标签之前.
无效的原因是在浏览器还没有创建f的DOM对象之前你就试图为该对象绑定事件.
放到后面就行了.追问

那应该怎么改呢?我要的效果是javascript按我这种调用方式document.f.b.onClick=function(){}点击按钮,弹出提示框“thanks!”!

追答

噢?我说的还不明白吗?

test

document.f.b.onclick=function(){alert("Thanks!");}

追问

纠结!
原来在document.f.b.onclick这种方式绑定事件的事件名必须是全小写的!!!!
我一直习惯用骆驼法写了,所以看了好久没看出来!

请问你,
你知道为什么这里对事件名大小写敏感吗?

追答

js本就是大小写敏感的,如果你写在HTML标签里,浏览器还可以容忍,但如果写在脚本里,JS引擎眼里是揉不得沙子的.所以,写代码最好规范,免得给自己制造麻烦.

温馨提示:答案为网友推荐,仅供参考
相似回答