javascript html5實(shí)現(xiàn)表單驗(yàn)證
表單驗(yàn)證為終端用戶檢測無效的數(shù)據(jù)并標(biāo)記這些錯(cuò)誤,是一種用戶體驗(yàn)的優(yōu)化。
下面展現(xiàn)瀏覽器自帶的驗(yàn)證功能也可在移動(dòng)端中查看:
HTML部分:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0"> <title>html5 表單驗(yàn)證</title> </head> <body> <form action="#" id="formValid" class="myform" novalidate="novalidate" onsubmit="return checkForm()"> <fieldset> <div class="form-group"> <label for="name">名稱</label> <div> <input type="text" class="form-control" id="name" name="name" required/> <span class="form-error">不能為空</span> </div> </div> <div class="form-group"> <label for="email">郵箱</label> <div> <input type="email" class="form-control" id="email" name="email" required/> <span class="form-error">郵箱格式不正確</span> </div> </div> <div class="form-group"> <label>省份</label> <select name="province" class="form-control"> <option value="">請選擇</option> <option value="s">四川</option> <option value="c">重慶</option> </select> </div> <input type="submit" class="btn" value="提交"/> </fieldset> </form> </body> </html>
CSS部分:
fieldset{border: 0;} .myform .form-control{ display: block; padding: 5px; width: 100% } .myform input:focus:invalid + .form-error{ display: inline; } .myform .form-error{ display: none; position: absolute; margin-top: .7em; padding: 1px 2px; color: #fff; font-size: .875rem; background: #f40; } .myform .form-error:after{ position: absolute; content: ""; top: -.5em; left: .5em; z-index: 100; display: inline-block; width: 0; height: 0; vertical-align: middle; border-bottom: .5em solid #f40; border-right: .5em solid transparent; border-left: .5em solid transparent; border-top: 0 dotted; transform: rotate(360deg); overflow: hidden; } .btn{ padding: 5px 20px; }
JavaScript部分:
function checkForm(){ var myform = document.getElementById("formValid"); return check(myform.elements); } function check(eles){ var ele; for(var i = 0;i<eles.length;i++){ ele = eles[i]; if(ele.nodeName == "SELECT"){ if(!ele.selectedIndex){ alert("請選擇省份"); return false; } }else if(ele.name){ if(!ele.checkValidity()){ ele.focus(); return false; } } } return true; }
以上就是javascript結(jié)合html5實(shí)現(xiàn)表單驗(yàn)證的全部代碼,希望對大家的學(xué)習(xí)有所幫助。
- js表單驗(yàn)證實(shí)例講解
- 擁有一個(gè)屬于自己的javascript表單驗(yàn)證插件
- AngularJS自動(dòng)表單驗(yàn)證
- JS組件Form表單驗(yàn)證神器BootstrapValidator
- 詳解AngularJS實(shí)現(xiàn)表單驗(yàn)證
- 快速學(xué)習(xí)jQuery插件 jquery.validate.js表單驗(yàn)證插件使用方法
- 常用javascript表單驗(yàn)證匯總
- jquery validate.js表單驗(yàn)證入門實(shí)例(附源碼)
- js 常用正則表達(dá)式表單驗(yàn)證代碼
- js實(shí)現(xiàn)表單及時(shí)驗(yàn)證功能 用戶信息立即驗(yàn)證
相關(guān)文章
使用Math.max,Math.min獲取數(shù)組中的最值實(shí)例
下面小編就為大家?guī)硪黄褂肕ath.max,Math.min獲取數(shù)組中的最值實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04js自動(dòng)查找select下拉的菜單并選擇(示例代碼)
這篇文章主要介紹了js自動(dòng)查找select下拉的菜單并選擇(示例代碼)需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02js 獲取站點(diǎn)應(yīng)用名的簡單實(shí)例
下面小編就為大家?guī)硪黄猨s 獲取站點(diǎn)應(yīng)用名的簡單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-08-08ES6基礎(chǔ)之解構(gòu)賦值(destructuring assignment)
這篇文章主要介紹了ES6基礎(chǔ)之解構(gòu)賦值(destructuring assignment),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-02-02javascript拖拽上傳類庫DropzoneJS使用方法
這篇文章主要介紹了javascript拖拽上傳類庫DropzoneJS使用方法,大家參考使用吧2013-12-12document.createElement("A")比較不錯(cuò)的屬性
document.createElement("A")比較不錯(cuò)的屬性...2007-08-08