본 글에서는 다수의 동일한 이름을 검증하는 jQuery Validate 방법을 주로 소개합니다. 필요하신 분들은 참고하시면 됩니다.
소개:
양식 페이지에 다음 코드가 있습니다
<form> <input name="zhai"/><!-- 三个相同name的input --> <input name="zhai"/> <input name="zhai"/> </form>
jquery 유효성 검사는 여러 개의 동일한 이름을 확인할 때 첫 번째 입력 상자만 확인합니다.
해결책 1:
양식 페이지에 해당하는 js에 다음 코드를 추가하면 현재 페이지에서만 여러 문제를 해결할 수 있습니다. 이름 확인
if ($.validator) { $.validator.prototype.elements = function () { var validator = this, rulesCache = {}; return $(this.currentForm) .find("input, select, textarea") .not(":submit, :reset, :image, [disabled]") .not(this.settings.ignore) .filter(function () { if (!this.name && validator.settings.debug && window.console) { console.error("%o has no name assigned", this); } rulesCache[this.name] = true; return true; }); } }
해결책 2:
소스 파일을 수정하면 모든 페이지에서 여러 이름을 확인할 수 있습니다
1: jquery.validate.js 파일
을 수정하고 ctrl+F를 사용하여 ruleCache에서 this.name을 찾습니다. 다음 코드를 주석 처리합니다.
elements: function() { var validator = this, rulesCache = {}; // select all valid inputs inside the form (no submit or reset buttons) return $(this.currentForm) .find("input, select, textarea") .not(":submit, :reset, :image, [disabled]") .not( this.settings.ignore ) .filter(function() { if ( !this.name && validator.settings.debug && window.console ) { console.error( "%o has no name assigned", this); } // 注释掉这里 // select only the first element for each name, and only those with rules specified //if ( this.name in rulesCache || !validator.objectLength($(this).rules()) ) { // return false; //} rulesCache[this.name] = true; return true; }); },
방법 2: jquery.validate.min.js 파일 수정
ctrl+F를 사용하여 검색(c[this.name ]= !0,!0)})rree
【관련 추천】1. 2. 단일 라인 JS 모바일 화폐 형식 검증 구현 Vue v-model 양식 제어 바인딩 예제 튜토리얼4.Bootstrap 양식 검증 양식Validation Detail 예시 설명
5. JS의 OffsetWidth 버그 및 처리 방법
위 내용은 여러 이름을 확인하는 jQuery Validate 예제에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!