有时候用户填写表单后,可能信息输入不完整,这时候我们可以利用javascript验证表单输入的完整性,如果用户输入不合法的话,我们就阻止用户提交。还比如说点击超链接的时候,用户有可能没有权限,我们也可以利用javascript阻止。
阻止默认事件的方法:
ie中: window.event.returnValue=false;
火狐中:event.preventDefault();
我们也可以直接使用return false来阻止默认事件的发生。
下面是测试代码:
当输入的用户名是 shizhan的时候,就阻止提交表单,
当输入的是其他的,就提交表单。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function login(event)
{
var v1 = document.getElementById("id1");
var name = v1.value;
var form1 = document.getElementById("form1");
if(name=="shizhan")
{
var div1 = document.getElementById("div1");
div1.innerHTML="被阻止了,不能提交表单";
if(document.attachEvent)
{
window.event.returnValue=false;
}
else
{
event.preventDefault();
}
//return false;
}
/*else
{
form1.submit();
}*/
}
window.onload =function()
{
var btn1 = document.getElementById("btn1");
btn1.onclick = login;
}
</script>
</head>
<body>
<form action="1.html" id="form1" >
<input type="text" id="id1"/>
<input type="submit" value="提交" id="btn1" />
<div id="div1">
</div>
</form>
</body>
</html>