尽管HTML事件属性可以将事件处理器捆绑为文本的一部分,但其代码一般较为短小,功能较弱,只适用于做简单的数据验证、返回相关提示信息等场合。而使用JavaScript脚本可以更为方便的处理各种事件。
由于HTML 将事件看成对象的属性,可以通过给该属性赋值的方式来改变事件的处理 器
1. 匿名函数
匿名函数的方式即使用Function对象构造匿名的函数,并将其方法复制给事件,此时匿名的函数成为该事件的事件处理器。
<form name=MyForm id=MyForm>
<input type="button" name="MyButton" id="MyButton" value="事件测试">
</form>
document.MyForm.MyButton.onclick = new Function()
{
alert("You Clicked me!");
}
2. 显式声明
设置事件处理器时,也可以不使用上面的匿名函数,而是将该事件的处理器设置为已经存在的函数。
<form name=MyForm id=MyForm>
<input type="button" name="MyButton" id="MyButton" value="事件测试">
</form>
function theFunc(){
alert("You Clicked me!");
}
document.MyForm.MyButton.onclick = theFunc;
3. 手工触发
<form name=MyForm id=MyForm>
<input type="button" name="MyButton" id="MyButton" value="事件测试">
<input type="button" name="MyButton" id="MyButton" value="手工触发测试" onclick="document.MyForm.MyButton.onclick()">
</form>