html form 中的onsubmit在点submit按钮时被触发。
如果return false;则结果不会被提交到action中去(也就是提交动作不会发生),如果不返回或者返回true,则执行提交动作。
结论:
1.如果html中使用form的onsubmit进行提交前的数据验证,需要验证函数返回一个布尔值,而且要写成οnsubmit=”return函数名();”
return不能少,否则无论函数返回true还是false都能够提交,达不到验证的目的。
2.只能使用sunmit按钮进行提交才触发onsubmit事件,button按钮的提交不能触发onsubmit事件
例子(W3School)
<html>
<head>
<script type="text/javascript">
function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
{alert(alerttxt);return false}
else {return true}
}
}
function validate_form(thisform)
{
with (thisform)
{
if (validate_required(email,"Email must be filled out!")==false)
{email.focus();return false}
}
}
</script>
</head>
<body>
<form action="submitpage.htm" οnsubmit="
return validate_form(this)" method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit">
</form>
</body>
</html>