Form validation detects invalid data and marks these errors for end users, which is a user experience optimization.
The following shows the verification function that comes with the browser and can also be viewed on the mobile terminal:
HTML part:
<!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 表单验证</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 part:
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 part:
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; }
The above is all the code for javascript combined with html5 to implement form verification. I hope it will be helpful to everyone's learning.