jQuery_jquery를 기반으로 bootstrapValidator에서 전역 유효성 검사 구현

WBOY
풀어 주다: 2016-05-16 15:27:16
원래의
1087명이 탐색했습니다.

BootstrapValidator는 Boostrap v3용으로 특별히 제작된 양식 검사 jQuery 플러그인입니다. 일반적으로 사용되는 여러 검사 기능을 구현할 수 있고 확장이 쉬우며 중국어도 지원합니다! 부트스트랩 사용자를 위해 즉시 사용할 수 있습니다.

접두사:

jQuery, bootstrap, bootstrapValidator 소개

문제 설명:

프로젝트에서는 모든 양식 입력 상자에 & 기호를 입력할 수 없도록 요구합니다. 부트스트랩에서 사용할 수 있는 방법이 없어서 직접 해야 했습니다

생각:

정규 표현식을 사용하세요.

두 가지 상황이 있습니다. 첫 번째는 입력 상자에 자체 정기 확인이 있으면 걱정할 필요가 없다는 것입니다(일반적으로 두 번째 경우에는 정기 확인이 사용됩니다). 정규 표현식이 없으면 &의 정규 규칙을 입력할 수 없다는 점을 추가해야 합니다.

위의 두 가지 상황에 따라 bootstrapValidator 초기화 기능을 오버로드하고 초기화 설정을 수정하는 것이 필요합니다. 마지막으로 원래 bootstrapValidator 함수를 복원합니다(이 단계는 필요합니다. 원래 bootstrapValidator 함수에는 손실될 수 없는 많은 관련 항목이 있습니다).

구현:

/*add chenhua 2015.10.16 重写bootstrapValidator方法?给每一个验证项都添加禁止输入"&"符号*/ 
$(function(){  //保存原始的bootstrapValidator 
  var overwrite = $.fn.bootstrapValidator;   //重载bootstrapValidator
  $.fn.bootstrapValidator = function(options){ 
    //恢复原来的bootstrapValidator,因为其加了很多数据是不能丢失的 
    $.fn.bootstrapValidator = overwrite; 
            //这里有两种做法,第一种是直接修改arguments内容,使其包含不能输入&的验证,然后调用即可;    //第二种是先使用arguments来初始化,然后使用调用bootstrapValidator的函数来给非正则表达式验证的项添加不能输入&的验证    //这里我们使用了第二中。  
    var validtor = overwrite.apply(this,arguments); 
    if($.type(arguments[0]) == "object"){ 
      var vtor = this.data("bootstrapValidator"),      //过滤出输入框表单项   
      fileds = this.find("input[name][type='hidden'],input[name][type='password'],input[name][type='text'],textarea[name]").not(":disabled,[type='hidden']"); 
      fileds.each(function(){ 
        //本身没有正则验证才添加不能输入&的验证 
        if(!vtor.getOptions($(this).attr('name'),'regexp','regexp')){ 
         vtor.addField($(this).attr('name'), 
            { 
              validators: { 
                regexp: { 
                  regexp: /^[^&]*$/, 
                  message: "不能包含&字符" 
                } 
              } 
          }) 
        } 
      }) 
    } 
    return validtor; 
  } 
}) 
로그인 후 복사

위 내용은 Script House 편집자가 소개한 jQuery 기반의 bootstrapValidator에서의 글로벌 검증입니다.

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿