>웹 프론트엔드 >JS 튜토리얼 >정규식을 사용하여 페이지 양식에 확인 코드를 구현하는 방법

정규식을 사용하여 페이지 양식에 확인 코드를 구현하는 방법

php中世界最好的语言
php中世界最好的语言원래의
2018-03-29 17:15:162202검색

이번에는 정규식을 사용하여 페이지 양식의 인증코드를 구현하는 방법을 알려드리겠습니다. 정규식을 사용하여 페이지 양식의 인증코드를 구현할 때 주의해야 할 주의사항은 무엇인가요? 실제 사례이므로 살펴보겠습니다.

일반적으로 등록 페이지를 수행할 때 사용자가 정보를 입력할 때 정규 표현식을 사용해야 합니다. 자세한 내용은 아래 예를 참조하세요.

렌더링: (사용자가 입력한 정보가 사양에 맞지 않을 경우 오류 메시지가 표시됩니다.)

HTML 구조와 js만 제공합니다. 스타일은 본인이 원하는 디자인 시안대로 작성하시면 됩니다. 각각 올바른 시간과 잘못된 시간을 입력했습니다. 이때 다른 클래스를 추가하고 다른 높이를 사용했습니다. 올바른 높이는 높이가 작아서 프롬프트의 빨간색 텍스트를 숨길 수 있다는 것입니다.

정규식을 사용하여 페이지 양식에 확인 코드를 구현하는 방법

html 구조:

<p>
  </p><h1>注册</h1>
  <p>
    <input>
    <span>字母开头,长度5-10位字母数字下划线</span>
  </p>
  <p>
    <input>
    <span>字母数字长度6-18位</span>
  </p>
  <p>
    <input>
    <span>两次密码不一致</span>
  </p>
  <p>
    <input>
    <span>电话号码格式不正确</span>
  </p>
  <p>
    <input>
    <span>邮箱格式不正确</span>
  </p>
  <p>
    <input>
    <span>证件格式不正确</span>
  </p>
  <p>
    <input>
  </p>
  <p>请先输入密码</p>

js:

//正则表达式已//双斜杠开始和结束,限制必须要以什么什么开头要在之前加^,限制必须要以什么什么结尾要在后面加$,例:/^正则$/
<script>
  var reg = {
    user:/^[a-zA-Z]\w{4,9}$/,
    //用来判断用户名,第一位不能为数字,也就是小写字母或者大写字母,后面的内容\w表示字符(数字字母下划线)
    //要求是5-10位字符,所以出去第一位,还需要4-9位的\w
    pwd:/^[\da-zA-Z]{6,18}$/,
    //用来判断密码,html结构中要求是数字字符6到18位,\d表示数字
    tel:/^1[34578]\d{9}$/,
    //用来判断电话号码,通常手机号第一位为1,第二位只可能出现3.4.5.7.8,后面剩下的9位数字随机
    mail:/^[1-9a-zA-Z_]\w*@[a-zA-Z0-9]+(\.[a-zA-Z]{2,})+$/,
    //用来判断邮箱,通常邮箱没有以0开头的,所以第一位为1-9数字或者小写字母或者大写字母,第二位开始任意字符
    //也可以只有第一位没有第二位,*表示至少0个,@后面同理,小写字母或者大写字母或者数字,.需要转意符,所以写成\.
    //点后面通常是com或者cn或者com.cn,所以是小写字母或者大写字母至少两位
    IDCard:/^[1-9]\d{16}[\dxX]$/,
    //用来判断身份证,通常第一位不为零,所以取1-9的数字,中间的16位数字随机,最后一位要么是数字要么是X
  };
  var arr = [
    document.getElementsByName(&#39;user&#39;)[0],
    document.getElementsByName(&#39;pwd&#39;)[0],
    document.getElementsByName(&#39;tel&#39;)[0],
    document.getElementsByName(&#39;mail&#39;)[0],
    document.getElementsByName(&#39;IDCard&#39;)[0]
  ];
  for(var i=0;i<arr.length;i++){
    arr[i].onblur = function(){
      if(this.value){
        if(reg[this.name].test(this.value)){
          this.parentNode.className = &#39;right&#39;;  //判断正确的时候加的class
        }else{
          this.parentNode.className = &#39;wrong&#39;;  //判断错误的时候加的class
          this.focus();
        };
      };
    }; 
  };
  var oTip = document.getElementById(&#39;tip&#39;);
  var opwd = document.getElementsByName(&#39;pwd2&#39;)[0];
  opwd.onfous = function(){
    if(!arr[1].value){
      arr[1].focus();
      oTip.className = &#39;show&#39;;
      setTimeout(function () {
        oTip.className = &#39;&#39;;
      },1000);
    };
  };
  opwd.onblur = function(){
    if(this.value){
      if(this.value != arr[1].value){
        this.focus();
        this.parentNode.className =&#39;wrong&#39;;
      }else{
       this.parentNode.className =&#39;right&#39;;
      };
    };
  };
</script>

이 기사의 사례를 읽은 후 방법을 마스터했다고 믿습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사에 주목하세요!

추천 도서:

일반 여러 줄 모드와 한 줄 모드 사용에 대한 자세한 그래픽 설명

정규 표현식에서 둘러보기를 사용하는 방법

위 내용은 정규식을 사용하여 페이지 양식에 확인 코드를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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