ASP  JavaScript事件
事件是浏览器响应用户交互操作的一种机制,JavaScript的事件处理机制可以改变浏览器响应用户操作的方式,这样就开发出具有交互性,更具响应性和易于使用的网页。网页中的每个元素都可以产生某些可以触发JavaScript函数的事件。比方说,我们可以在用户点击某按钮时产生一个onClick事件来触发某个函数,事件在HTML页面中定义。
1.事件类型
客户端JavaScript支持大量的事件类型。发生事件的类型不同,生成的事件类型也不相同。JavaScript支持大量不同的事件处理程序属性。在表8-30列出了这些属性,还列出了何时触发这些事件处理程序,以及哪些HTML标记支持这些事件处理属性。
表8-30  事件处理属性
blur事件
事件名称
触发条件
支持标记
onabort
图像装载被中断时
<img>
onblur
标记失去输入焦点
<button><input><label><select><textarea><body>
onchange
选择<select>标记中的选项或者其他表单标记失去了焦点,并且由于它获得了焦点而使值发生了改变
<input><label><select><textarea>
onclick
鼠标按下并释放,发生在mouseup事件后。若返回false可以取消默认动作。
大多数标记
ondbclick
双击鼠标时
大多数标记
onerror
在装载图像的过程中发生了错误时
<img>
onfocus
标记得到输入焦点
<button><input><label><select><textarea><body>
onkeydown
键盘键被按下时,若返回false可取消默认动作
表单元素、<body>
onkeypress
键盘键被释放时,若返回false可取消默认动作
表单元素、<body>
onkeyup
键盘键被释放
表单元素、<body>
onload
文件加载完成
<body><frameset><img><iframe><object>
onmousedown
按下鼠标左键时
大多数标记
onmousemove
鼠标移动时
大多数标记
onmouseout
鼠标离开了标记
大多数标记
onmouseover
鼠标移到标记上。若用于<A>标记,返回true可以防止URL出现在状态栏中。
大多数标记
onmouseup
释放鼠标左键
大多数标记
onreset
表单请求被重置时,若返回false则阻止重置
<form>
onresize
调整窗口大小
<body><frameset>
onselect
选中文本
<input><textarea>
onsubmit
请求提交表单时,,若返回false则阻止提交
<form>
onunload
卸载(关闭)文件或者框架集时
<body><frameset>
可以把表8-30中所示的这些事件分为两大类事件:
原始事件  这些事件是在用户移动鼠标,单击鼠标或者键盘时触发的。这些事件只描述用户的动作,没有其他含义。
语义事件  这些事件的含义比较复杂,通常只有特定的环境中被触发。例如,在浏览器加载完文件或者单击提交表单时。语义事件通常作为事件的附加属性触发。
2.事件处理
事件处理程序被作为HTML的属性值并设置为JavaScript脚本。例如,要单击一个按钮执行JavaScript脚本,可以把这段代码设置为<input>标记的onClick属性的值,如下所示:
<INPUT type="button" id="EnterButton" value="确定" onClick="alert('欢迎!');">
事件处理程序的属性值可以是任意的JavaScript脚本,如果处理程序由多个JavaScript语句组成,则必须在各语句之间使用分号分隔。例如:
<INPUT type="button" id="EnterButton" value="确定"
onClick="document.write('欢迎光临!');  alert('请随便转转!');">
在实际使用时,如果事件处理程序有多个语句,可以把这些语句定义在一个函数体中,然后在HTML事件处理属性中调用这个函数,这样处理起来会更加容易。例如,如果在提交之前验证用户的表单输入,可以用<form>标记的onsubmit属性。表单验证通常要求多行代码,所以可以定义一个表单验证函数,用onClick属性调用这个函数,这样比把所有代码填充在一个长长的属性值中要清晰、容易得多。例如,如果定义了一个名为validateForm()的函数来执行验证,可以使用如下的方式来从一个事件处理属性中调用它:
<form action="processForm" onsubmit="return validateForm();">
</form>
由于HTML标记不区分大小写,因此可以选择多种方式来确定事件处理属性的大小写。通常采用大小写混合的形式,即前缀为小写的on,如onClick、onLoad和onMouseOut等等。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。