JavaScript 表單驗證

JavaScript 表單驗證

JavaScript 可用來在資料被送往伺服器前對 HTML 表單中的這些輸入資料進行驗證。

表單資料經常需要使用 JavaScript 來驗證其正確性:

  • 驗證表單資料是否為空?
  • 驗證輸入是否是一個正確的email地址?
  • 驗證日期是否輸入正確?
  • 驗證表單輸入內容是否為數字型?

必填(或必選)專案

下面的函式用來檢查使用者是否已填寫表單中的必填(或必選)專案。假如必填或必選項為空,那麼警告框會彈出,並且函式的返回值為 false,否則函式的返回值則為 true(意味著資料沒有問題):

function validateForm() { var x=document.forms["myForm"]["fname"].value; if (x==null || x=="") { alert("姓必須填寫"); return false; } }

以上函式在 form 表單提交時被呼叫:

例項

<form name="myForm" action="demo-form.php" onsubmit="return validateForm()" method="post"> 姓: <input type="text" name="fname"> <input type="submit" value="提交"> </form>



E-mail 驗證

下面的函式檢查輸入的資料是否符合電子郵件地址的基本語法。

意思就是說,輸入的資料必須包含 @ 符號和點號(.)。同時,@ 不可以是郵件地址的首字元,並且 @ 之後需有至少一個點號:

function validateForm(){ var x=document.forms["myForm"]["email"].value; var atpos=x.indexOf("@"); var dotpos=x.lastIndexOf("."); if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){ alert("不是一個有效的 e-mail 地址"); return false; } }

下面是連同 HTML 表單的完整程式碼:

例項

<form name="myForm" action="demo-form.php" onsubmit="return validateForm();" method="post"> Email: <input type="text" name="email"> <input type="submit" value="提交"> </form>