HTML 表單驗證概述
當前只要稍微規範一些的網站,在提交表單資訊的時候都會進行格式驗證。
比如驗證使用者名稱密碼是否為空、郵箱格式是否正確,或者身份證格式是否規範。
通常表單驗證分為兩層:
(1).前端表單驗證,與使用者有良好的互動介面,但是並不安全,因為JavaScript可以被禁用。
(2).後臺表單驗證,除了前端的驗證以外,為了保證安全,後臺程式碼還會進行一層驗證。
本文並不關心後臺是如何實現驗證的,只介紹前臺實現的驗證功能。
首先看一段程式碼例項:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script type="text/javascript"> function checkForm(form) { let reg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; if(form.username.value == "") { alert("使用者名稱不能為空!"); form.username.focus(); return false; } if(form.password.value == "") { alert("密碼不能為空!"); form.password.focus(); return false; } if(form.email.value==""){ alert("郵箱不能為空!"); form.email.focus(); return false; }else if(!reg.test(form.email.value)){ alert("郵箱格式不正確!"); form.email.focus(); return false; } return true; } window.onload = function () { var myform = document.forms[0]; myform.onsubmit = function () { return checkForm(this); } } </script> </head> <body> <form action="#" method="post"> 姓名:<input type="text" name="username"/><br/> 密碼:<input type="password" name="password" /><br/> 郵箱:<input type="text" name="email" /><br/> <input type="submit" value="提交表單"/> </form> </body> </html>
上述程式碼利用JavaScript實現了表單驗證功能。
程式碼分析如下:
(1).點選提交按鈕之後,會對錶單元素內容進行正確性驗證。
(2).對使用者名稱和密碼進行value是否為空驗證,對郵箱同時進行是否為空和郵箱格式驗證。
HTML5之前,前端表單驗證必須要結合JavaScript,技術的進步通常是為了滿足人懶惰的天性,HTML5也體現了這一點,大量簡單的表單驗證效果是HTML5內建,無需我們書寫JavaScript程式碼。
程式碼演示如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> </head> <body> <form action="#" method="post"> 姓名:<input type="text" name="username" required/><br/> 密碼:<input type="password" name="password" required /><br/> 郵箱:<input type="email" name="email" required /><br/> <input type="submit" value="提交表單"/> </form> </body> </html>
上述程式碼沒有一段JavaScript程式碼,但是實現了比較良好的表單驗證功能。
程式碼執行效果截圖如下:
程式碼分析如下:
(1).表單元素value值不為空,那麼只要在對應元素新增required屬性即可。
(2).如果要實現郵箱格式驗證,只要將type屬性值修改為email。
最後總結:
雖然HTML5自帶的表單驗證功能極大提高了工作效率,然而往往免費的東西不是最好的。
所以在一些驗證需求要求較高的情況下,還需要進行自定義。
後續的文章將會對HTML5自帶驗證共和自定義驗證功能進行詳細介紹。
相關文章
- HTML 表單概述HTML
- JavaScript 表單驗證JavaScript
- Laravel 表單驗證Laravel
- javascript表單驗證JavaScript
- bootstrap表單驗證boot
- bootstrapValidator 表單驗證boot
- antd 表單驗證
- XML 驗證概述XML
- 輸入表單驗證
- 路由表單驗證路由
- 表單required 必需驗證UI
- 表單資料驗證
- 表單驗證 regex:pattern
- 利用js編寫一個簡單的html表單驗證,驗證通過時提交資料(附原始碼)JSHTML原始碼
- vue表單驗證你真的會了嗎?元件之表單驗證(form)validateVue元件ORM
- iview表單驗證問題 Select驗證必填失敗,以及表單物件巢狀陣列驗證方法View物件巢狀陣列
- Lumen 仿 Laravel 表單驗證Laravel
- 表單驗證工具類ValidationUtils
- Layui 自定義表單驗證UI
- jquery.validate 表單驗證jQuery
- 前端表單驗證的目的前端
- 表單驗證教程簡介
- validate表單驗證外掛
- elementui表單驗證 對比兩個表單大小UI
- Laravel 自定義表單驗證-自定義驗證規則Laravel
- Java隨機生成圖片與HTML表單中的驗證碼實現Java隨機HTML
- 用onsubmit做簡單表單驗證(37)MIT
- 實戰表單驗證學習
- BootstrapBlazor-ValidateForm 表單驗證元件bootBlazorORM元件
- 表單驗證使用擴充套件套件
- jQuery表單驗證效果詳解jQuery
- 純CSS實現表單驗證CSS
- SpringMVC表單驗證器的使用SpringMVC
- JavaScript表單不為空驗證JavaScript
- HTML————15、HTML 表單HTML
- 表單驗證自定義格式輸出
- vue表單驗證 -- mmj-vue-vdVue
- Laravel 的 表單驗證,多場景Laravel