Open Qingquan-Li opened 7 years ago
本文重点: 学会使用JavaScript实现表单验证 会制做输入提示的特效
本文重点:
数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。
附:String 对象常用属性和方法
toLowerCase()
toUpperCase()
charAt(index)
indexOf(str,index)
substring(index1,index2)
表单验证基本结构-实例:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>JavaScript 表单验证基本结构</title> <script type="text/javascript"> function checkform(){ // 1. 获取要验证的表单元素 var input = document.getElementById("username"); //2. 验证输入的内容(利用String对象的方法进行验证) if (input.value == "" || input.value.length > 12) { //3.弹出提示内容 alert("内容不能为空或长度不能超过12个字符"); return false; //返回验证结果 } return true ; //返回验证结果 } </script> </head> <body> <form action="" method = "get" id = "myform" onsubmit = "return checkform()"> 用户名:<input type = "text" name = "username" id = "username"/> <br> <input type = "submit" value = "提交"/> </form> </body> </html>
实例:
<!DOCTYPE html> <html> <head> <title>验证登录页面</title> </head> <body> <table> <form action="" method="post" name="myform" onsubmit="return check()"> <tr> <td> 账号:</td> <td><input id="username" type="text"></td> </tr> <tr> <td> 密码:</td> <td><input id="pwd" type="password" /></td> </tr> <tr> <td><input name="B1" type="submit" value="提交" class="submit"></td> </tr> </form> </table> <script type="text/javascript"> //定义一个函数,函数名叫 $ 。接收一个参数 pElementID (可随便命名为id、element、abc等),下面每个表单调用时返回 element 节点元素内容(表单元素的内容)。 //不用每次都使用变量获取表单元素,如: var input = document.getElementById("username"); 再进行验证。 function $(pElementID){ return document.getElementById(pElementID); } function check () { var pUserName=$("username"); if ( pUserName.value == "" ) { alert("请输入用户名!"); return false; } if (pUserName.value.length > 16 || pUserName.value.length < 4 ) { alert("用户名必须为4-16位字符"); return false; } var pwd=$("pwd"); if(pwd.value==""){ alert("密码不能为空"); return false; } if(pwd.value.length<6){ alert("密码不能少于6位"); return false; } return true; } </script> </body> </html>
上面这种提示框表单验证的缺点:
如何实现用户填写用户名时,文本框即时提示效果?
文本框对象、常用的属性、方法和事件
blur()
focus()
select()
<script type="text/javascript"> //获取DOM元素函数 function $(pElementID){ return document.getElementById(pElementID); } //更改DOM元素的class名称 function updateRed(obj){ var mObj=$(obj); mObj.className="red"; } // 给元素边框颜色为红色 function updateIntro(){ var intro=$("intro"); intro.style.borderColor="red"; } //更改边框颜色为绿色 function checkIntro(){ var intro=$("intro"); intro.style.borderColor="#61b16a"; } //验证用户函数 function checkUser(){ var userName=$("username"); var userMess=$("userMess"); userMess.innerHTML=""; if (userName.value == "" ) { userMess.innerHTML="请输入用户名"; userName.className="red"; return false; }else if (userName.value.length> 16 || userName.value.length< 4 ) { userMess.innerHTML="用户名必须为4-16位字符,请重新填写"; userName.className="red"; return false; } userName.className="borSty"; return true; } //验证密码 function checkPwd(){ var pwd=$("pwd"); var pwdMess=$("pwdMess"); pwdMess.innerHTML = ""; if(pwd.value==""){ pwdMess.innerHTML="密码不能为空"; pwd.className="red"; return false; }else if(pwd.value.length < 6){ pwdMess.innerHTML="密码不能少于6位"; pwd.className="red"; return false; } pwd.className="borSty"; return true; } //验证函数 function check () { if(checkUser() && checkPwd()){ return true; } return false; } </script>
表单验证简介
表单验证是什么?
表单验证必要性
网页上常见的验证形式和内容
表单验证基本步骤与基本结构
附:String 对象常用属性和方法
toLowerCase()
toUpperCase()
charAt(index)
indexOf(str,index)
substring(index1,index2)
表单验证基本结构-实例:
表单验证升级-实时提示
实例:
上面这种提示框表单验证的缺点:
如何实现用户填写用户名时,文本框即时提示效果?
文本框对象
文本框对象、常用的属性、方法和事件
blur()
focus()
select()