preventDefault()
函数用于阻止当前触发事件的默认行为。
在HTML文档中,当我们触发某些DOM元素的特定事件时,可以执行该元素的默认行为。比如链接的click
事件:当我们点击一个链接时,就会跳转到指定的URL。再比如:<form>表单元素的submit
事件,当我们触发表单的提交事件时,就可以提交当前表单。
使用preventDefault()
函数可以阻止该元素的默认行为。
该函数属于jQuery的Event对象。
语法
eventObject.preventDefault( )
返回值
preventDefault()
函数没有返回值,也可以说返回值为undefined
。
如果使用jQuery绑定的事件处理函数的返回值为false
,jQuery也会阻止触发元素的默认行为。
示例&说明
请参考下面这段HTML代码:
<form action="http://www.365mini.com" method="post">
<input id="username" name="username" type="text" /><br>
<input type="submit" value="提交" />
</form>
<a href="http://www.365mini.com">删除</a>
与event.preventDefault()
函数相关的jQuery示例代码如下(其中表单验证部分的代码仅作简单的非空验证):
$("a").click( function(event){ if( !confirm("你确定要删除?") ){ event.preventDefault(); // 阻止链接默认的URL跳转行为 // return false; // 函数的返回值为false,也可以起到阻止默认行为的效果 } } ); $("form").submit( function(event){ if( !$("#username").val() ){ alert("username is required!"); event.preventDefault(); // 阻止默认的表单提交行为 // return false; // 函数的返回值为false,也可以起到阻止默认行为的效果 } } );