>  기사  >  웹 프론트엔드  >  일반적으로 사용되는 자바스크립트 양식 검증_자바스크립트 기술 요약

일반적으로 사용되는 자바스크립트 양식 검증_자바스크립트 기술 요약

WBOY
WBOY원래의
2016-05-16 15:32:121265검색

예시를 통한 설명: 입력 내용이 숫자인지, 자릿수에 맞는지 확인하세요. 틀리면 친절하게 알려주세요.

렌더링:

<!DOCTYPE html>
<html>
<body>

<h1>我的第一段 JavaScript</h1>

<p>请输入数字。如果输入值不是数字,浏览器会弹出提示框。</p>

<input id="demo" type="text">

<script>
function myFunction()
{
var x=document.getElementById("demo").value;
if(x==""){
alert("输入不能为空");
return;
}

if(isNaN(x)){
alert("请输入数字");
return;
}

if(x.length!=6){
alert("请输入6位数字");
return;
}

}
</script>
<button type="button" onclick="myFunction()">点击这里</button>
</body>
</html>

위의 예에는 일반적으로 사용되는 양식 확인 코드가 많이 포함되어 있으며 아래에서 공유됩니다.

1. 확인서

2. 닉네임 확인

3. 닉네임 길이 계산

4.닉네임 존재 여부 확인

5. 휴대폰번호 인증

6. 비밀번호 확인

7. 확인 이메일

8. 인증코드 확인

9.

선택 여부를 결정합니다.

등록 확인 예시:

<script language="JavaScript" src="js/jquery-1.9.1.min.js" type="text/javascript"></script>

//验证表单
     function vailForm(){
       var form = jQuery("#editForm");
       if(!vailNickName())return;
       if(!vailPhone())return;
       if(!vailPwd())return;
       if(!vailConfirmPwd())return;
       if(!vailEmail())return;
       if(!vailCode())return;
       if(!vailAgree())return;
       form.submit();
     }

//验证昵称
     function vailNickName(){
       var nickName = jQuery("#nickName").val();
       var flag = false;
       var message = "";
       var patrn=/^\d+$/;
       var length = getNickNameLength();
       if(nickName == ''){
         message = "昵称不能为空!";
       }else if(length<4||length>16){
         message = "昵称为4-16个字符!";
       } else if(checkNickNameIsExist()){
         message = "该昵称已经存在,请重新输入!";
       }else{
         flag = true;
       }
       if(!flag){
         jQuery("#nickNameDiv").removeClass().addClass("ui-form-item has-error");
         jQuery("#nickNameP").html("");
         jQuery("#nickNameP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#nickName").focus();
       }else{
         jQuery("#nickNameDiv").removeClass().addClass("ui-form-item has-success");
         jQuery("#nickNameP").html("");
         jQuery("#nickNameP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>该昵称可用");
       }
       return flag;
     }

//计算昵称长度
     function getNickNameLength(){
       var nickName = jQuery("#nickName").val();
       var len = 0;
      for (var i = 0; i < nickName.length; i++) {
         var a = nickName.charAt(i);

      //函数格式:stringObj.match(rgExp) stringObj为字符串必选 rgExp为正则表达式必选项
      //返回值:如果能匹配则返回结果数组,如果不能匹配返回null
         if (a.match(/[^\x00-\xff]/ig) != null){
          len += 2;
        }else{
          len += 1;
        }
      }
       return len;
     }

//验证昵称是否存在
     function checkNickNameIsExist(){
       var nickName = jQuery("#nickName").val();
       var flag = false;
       jQuery.ajax(
        { url: "checkNickName&#63;t=" + (new Date()).getTime(),
          data:{nickName:nickName},
          dataType:"json",
             type:"GET",
             async:false,
             success:function(data) {
             var status = data.status;
             if(status == "1"){
               flag = true;
             }
           }
      });
      return flag;
     }

//验证手机号
     function vailPhone(){
       var phone = jQuery("#phone").val();
       var flag = false;
       var message = "";
       //var myreg = /^(((13[0-9]{1})|159|153)+\d{8})$/;
       var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0-9]{1})|(15[0-3]{1})|(15[5-9]{1})|(18[0-3]{1})|(18[5-9]{1}))+\d{8})$/;
       if(phone == ''){
         message = "手机号码不能为空!";
       }else if(phone.length !=11){
         message = "请输入有效的手机号码!";
       }else if(!myreg.test(phone)){
         message = "请输入有效的手机号码!";
       }else if(checkPhoneIsExist()){
         message = "该手机号码已经被绑定!";
       }else{
         flag = true;
       }
       if(!flag){
         jQuery("#phoneDiv").removeClass().addClass("ui-form-item has-error");
         jQuery("#phoneP").html("");
         jQuery("#phoneP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#phone").focus();
       }else{
         jQuery("#phoneDiv").removeClass().addClass("ui-form-item has-success");
         jQuery("#phoneP").html("");
         jQuery("#phoneP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>该手机号码可用");
       }
       return flag;
     }

//验证手机号是否存在
       function checkPhoneIsExist(){
         var phone = jQuery("#phone").val();
         var flag = true;
         jQuery.ajax(
          { url: "checkPhone&#63;t=" + (new Date()).getTime(),
            data:{phone:phone},
            dataType:"json",
               type:"GET",
               async:false,
               success:function(data) {
               var status = data.status;
               if(status == "0"){
                 flag = false;
               }
             }
        });
        return flag;
       }

 //验证密码
     function vailPwd(){
       var password = jQuery("#password").val();
       var flag = false;
       var message = "";
       var patrn=/^\d+$/;
       if(password ==''){
         message = "密码不能为空!";
       }else if(password.length<6 || password.length>16){
         message = "密码6-16位!";
       }else if(patrn.test(password)){
         message = "密码不能全是数字!";
       }else{
         flag = true;
       }
       if(!flag){
         jQuery("#passwordDiv").removeClass().addClass("ui-form-item has-error");
         jQuery("#passwordP").html("");
         jQuery("#passwordP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#password").focus();
       }else{
         jQuery("#passwordDiv").removeClass().addClass("ui-form-item has-success");
         jQuery("#passwordP").html("");
         jQuery("#passwordP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>该密码可用");
       }
       return flag;
     }

//验证确认密码
     function vailConfirmPwd(){
       var confirmPassword = jQuery("#confirm_password").val();
       var patrn=/^\d+$/;
       var password = jQuery("#password").val();
       var flag = false;
       var message = "";
       if(confirmPassword == ''){
         message = "请输入确认密码!";
       }else if(confirmPassword != password){
         message = "二次密码输入不一致,请重新输入!";
       }else if(patrn.test(password)){
         message = "密码不能全是数字!";
       }else {
         flag = true;
       }
       if(!flag){
         jQuery("#confirmPasswordDiv").removeClass().addClass("ui-form-item has-error");
         jQuery("#confirmPasswordP").html("");
         jQuery("#confirmPasswordP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#confirm_password").focus();
       }else{
         jQuery("#confirmPasswordDiv").removeClass().addClass("ui-form-item has-success");
         jQuery("#confirmPasswordP").html("");
         jQuery("#confirmPasswordP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>密码正确");
       }
       return flag;
     }

//验证邮箱
     function vailEmail(){
       var email = jQuery("#email").val();
       var flag = false;
       var message = "";
       var myreg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; 
       if(email ==''){
         message = "邮箱不能为空!";
       }else if(!myreg.test(email)){
         message = "请输入有效的邮箱地址!";
       }else if(checkEmailIsExist()){
         message = "该邮箱地址已经被注册!";
       }else{
         flag = true;
       }
       if(!flag){
         jQuery("#emailDiv").removeClass().addClass("ui-form-item has-error");
         jQuery("#emailP").html("");
         jQuery("#emailP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#email").focus();
       }else{
         jQuery("#emailDiv").removeClass().addClass("ui-form-item has-success");
         jQuery("#emailP").html("");
         jQuery("#emailP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>该邮箱可用");
       }
       return flag;
     }

//验证邮箱是否存在
     function checkEmailIsExist(){
       var email = jQuery("#email").val();
       var flag = false;
       jQuery.ajax(
        { url: "checkEmail&#63;t=" + (new Date()).getTime(),
          data:{email:email},
          dataType:"json",
             type:"GET",
             async:false,
             success:function(data) {
             var status = data.status;
             if(status == "1"){
               flag = true;
             }
           }
      });
      return flag;
     }

//验证验证码

 function vailCode(){
       var randCode = jQuery("#randCode").val();
       var flag = false;
       var message = "";
       if(randCode == ''){
         message = "请输入验证码!";
       }else if(!checkCode()){
         message = "验证码不正确!";
       }else{
         flag = true;
       }
       if(!flag){
         jQuery("#randCodeDiv").removeClass().addClass("ui-form-item has-error");
         jQuery("#randCodeP").html("");
         jQuery("#randCodeP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
         //jQuery("#randCode").focus();
       }else{
         jQuery("#randCodeDiv").removeClass().addClass("ui-form-item has-success");
         jQuery("#randCodeP").html("");
         jQuery("#randCodeP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>");
       }
       return flag;
     }

//检查随机验证码是否正确
     function checkCode(){
       var randCode = jQuery("#randCode").val();
       var flag = false;
       jQuery.ajax(
        { url: "checkRandCode&#63;t=" + (new Date()).getTime(),
          data:{randCode:randCode},
          dataType:"json",
             type:"GET",
             async:false,
             success:function(data) {
             var status = data.status;
             if(status == "1"){
               flag = true;
             }
           }
      });
      return flag;
     } 

//判断是否选中
 function vailAgree(){
       if(jQuery("#agree").is(":checked")){
         return true;
       }else{
         alert("请确认是否阅读并同意XX协议");
       }
       return false;
     }
function delHtmlTag(str){
  var str=str.replace(/<\/&#63;[^>]*>/gim,"");//去掉所有的html标记
  var result=str.replace(/(^\s+)|(\s+$)/g,"");//去掉前后空格
  return result.replace(/\s/g,"");//去除文章中间空格
}

위 내용은 실용적인 JavaScript 양식 검증입니다. 마음에 드셨으면 좋겠습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.