被 JavaScript 驗證的這些典型的表單資料有:
使用者是否已填寫表單中的必填項目?
使用者輸入的郵件地址是否合法?
使用者是否已輸入合法的日期?
使用者是否在資料域 (numeric field) 中輸入了文本?
必填(或必選)項目
下面的函數用來檢查使用者是否已填寫表單中的必填(或必選)項目。假如必填或必選項為空白,那麼警告框會彈出,並且函數的傳回值為 false,否則函數的傳回值則為 true(意味著資料沒有問題):
複製代碼 代碼如下:
function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
{alert(alerttxt);return false}
else {return true}
}
}
E-mail驗證(驗證郵箱)
下面的函數檢查輸入的資料是否符合電子郵件地址的基本文法。
意思就是說,輸入的資料必須包含 @ 符號和點號(.)。同時,@ 不可以是郵件地址的首字元,並且 @ 之後需有至少一個點號:
複製代碼 代碼如下:
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (apos<1||dotpos-apos<2)
{alert(alerttxt);return false}
else {return true}
}
}
執行個體:
複製代碼 代碼如下:
<html>
<head>
<script type="text/javascript">
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (apos<1||dotpos-apos<2)
{alert(alerttxt);return false}
else {return true}
}
}
function validate_form(thisform)
{
with (thisform)
{
if (validate_email(email,"Not a valid e-mail address!")==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>