1111
<pre>
<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" onsubmit="return validate_form(this)" method="post">Email: <input type="text" name="email" size="30"><input type="submit" value="Submit">
</form>
</body>
</html>
<pre>
=======form========
onsubmit="return validate_form(this)" //当提交表单时,先执行 validate_form 参数是该表单自己this
=======validate_form()=====
function validate_form(thisform) //进入validate_form,参数就是刚才传进来的this
{
with (thisform) // with就是类似C++的namespace,简单说就是命名空间,也就是说with的{}里面就不用再写 thisform.xxx 了,直接写 xxx就是意味着是thisform的
{
if (validate_required(email,"Email must be filled out!")==false) //调用 validate_required 参数是thisform下面的name=email的标签的引用,另外一个参数是个字符串
{email.focus();return false} //如果validate_required返回false,就把焦点设定到email上,然后返回false,意味着验证失败,表单不会被提交。
}
}
========validate_required==========
function validate_required(field,alerttxt)
{
with (field) // “命名空间”为field,刚才已经解释了with之意
{
if (value==null||value=="") //当field.value 为空时
{alert(alerttxt);return false}// 弹出 alerttxt的内容,并且返回false
else {return true}
}
}
============================================