
- ES6 教程
- ES6 - 首頁
- ES6 - 概述
- ES6 - 環境
- ES6 - 語法
- ES6 - 變數
- ES6 - 運算子
- ES6 - 決策
- ES6 - 迴圈
- ES6 - 函式
- ES6 - 事件
- ES6 - Cookies
- ES6 - 頁面重定向
- ES6 - 對話方塊
- ES6 - Void 關鍵字
- ES6 - 頁面列印
- ES6 - 物件
- ES6 - 數字
- ES6 - 布林值
- ES6 - 字串
- ES6 - Symbol
- ES6 - 新的字串方法
- ES6 - 陣列
- ES6 - 日期
- ES6 - 數學
- ES6 - 正則表示式
- ES6 - HTML DOM
- ES6 - 迭代器
- ES6 - 集合
- ES6 - 類
- ES6 - Map 和 Set
- ES6 - Promise
- ES6 - 模組
- ES6 - 錯誤處理
- ES6 - 物件擴充套件
- ES6 - Reflect API
- ES6 - Proxy API
- ES6 - 驗證
- ES6 - 動畫
- ES6 - 多媒體
- ES6 - 除錯
- ES6 - 影像地圖
- ES6 - 瀏覽器
- ES7 - 新特性
- ES8 - 新特性
- ES9 - 新特性
- ES6 有用資源
- ES6 - 快速指南
- ES6 - 有用資源
- ES6 - 討論
ES6 - 驗證
表單驗證通常在伺服器端進行,在客戶端輸入所有必要資料並按下“提交”按鈕後。如果客戶端輸入的資料不正確或丟失,伺服器將不得不將所有資料傳送回客戶端,並請求使用正確的資訊重新提交表單。這確實是一個漫長的過程,給伺服器帶來了很大的負擔。
JavaScript 提供了一種在將表單資料傳送到 Web 伺服器之前,在客戶端計算機上驗證表單資料的方法。表單驗證通常執行兩個功能。
基本驗證 - 首先,必須檢查表單以確保所有必填欄位都已填寫。這隻需要迴圈遍歷表單中的每個欄位並檢查資料。
資料格式驗證 - 其次,必須檢查輸入的資料是否格式和值正確。您的程式碼必須包含適當的邏輯來測試資料的正確性。
示例
我們將以一個示例來理解驗證過程。這是一個簡單的 html 格式表單。
<html> <head> <title>Form Validation</title> <script type = "text/javascript"> <!-- // Form validation code will come here. // --> </script> </head> <body> <form action = "/cgi-bin/test.cgi" name = "myForm" onsubmit = "return(validate());"> <table cellspacing = "2" cellpadding = "2" border = "1"> <tr> <td align = "right">Name</td> <td><input type = "text" name = "Name" /></td> </tr> <tr> <td align = "right">EMail</td> <td><input type = "text" name = "EMail" /></td> </tr> <tr> <td align = "right">Zip Code</td> <td><input type = "text" name = "Zip" /></td> </tr> <tr> <td align = "right">Country</td> <td> <select name = "Country"> <option value = "-1" selected>[choose yours]</option> <option value = "1">USA</option> <option value = "2">UK</option> <option value = "3">INDIA</option> </select> </td> </tr> <tr> <td align = "right"></td> <td><input type = "submit" value = "Submit" /></td> </tr> </table> </form> </body> </html>
輸出
在成功執行上述程式碼後,將顯示以下輸出。

基本表單驗證
首先讓我們看看如何進行基本表單驗證。在上面的表單中,我們呼叫validate()來驗證資料,當onsubmit事件發生時。以下程式碼顯示了此 validate() 函式的實現。
<script type = "text/javascript"> <!-- // Form validation code will come here. function validate() { if( document.myForm.Name.value == "" ) { alert( "Please provide your name!" ); document.myForm.Name.focus() ; return false; } if( document.myForm.EMail.value == "" ) { alert( "Please provide your Email!" ); document.myForm.EMail.focus() ; return false; } if( document.myForm.Zip.value == "" || isNaN( document.myForm.Zip.value ) || document.myForm.Zip.value.length != 5 ) { alert( "Please provide a zip in the format #####." ); document.myForm.Zip.focus() ; return false; } if( document.myForm.Country.value == "-1" ) { alert( "Please provide your country!" ); return false; } return( true ); } // --> </script>
資料格式驗證
現在我們將看到如何在將其提交到 Web 伺服器之前驗證我們輸入的表單資料。
以下示例顯示瞭如何驗證輸入的電子郵件地址。電子郵件地址必須至少包含一個“@”符號和一個點(.)。此外,“@”不能是電子郵件地址的第一個字元,最後一個點必須至少在“@”符號之後的一個字元處
示例
嘗試以下用於電子郵件驗證的程式碼。
<script type = "text/javascript"> <!-- function validateEmail() { var emailID = document.myForm.EMail.value; atpos = emailID.indexOf("@"); dotpos = emailID.lastIndexOf("."); if (atpos < 1 || ( dotpos - atpos < 2 )) { alert("Please enter correct email ID") document.myForm.EMail.focus() ; return false; } return( true ); } // --< </script>
廣告