[JQUERY] jQuery를 검증 플러그인을 사용자 정의 날짜 형식
JQUERYjQuery를 검증 플러그인을 사용자 정의 날짜 형식
해결법
-
1.당신은 addMethod 기능을 사용하여 자신 만의 검증 방법을 만들 수 있습니다. 당신이 "일 / 월 / 년"을 확인하고 싶었다 말 :
당신은 addMethod 기능을 사용하여 자신 만의 검증 방법을 만들 수 있습니다. 당신이 "일 / 월 / 년"을 확인하고 싶었다 말 :
$.validator.addMethod( "australianDate", function(value, element) { // put your own logic here, this is just a (crappy) example return value.match(/^\d\d?\/\d\d?\/\d\d\d\d$/); }, "Please enter a date in the format dd/mm/yyyy." );
그리고 양식에 추가 :
$('#myForm') .validate({ rules : { myDate : { australianDate : true } } }) ;
-
2.nickf의 대답은 검증 플러그인이 이미 추가-methods.js 파일에 여러 가지 다른 날짜 형식에 대한 검증을 포함 좋은,하지만 노트입니다. 당신이 당신의 자신을 쓰기 전에, 누군가가 이미 수행되지 않았 음을 확인하십시오.
nickf의 대답은 검증 플러그인이 이미 추가-methods.js 파일에 여러 가지 다른 날짜 형식에 대한 검증을 포함 좋은,하지만 노트입니다. 당신이 당신의 자신을 쓰기 전에, 누군가가 이미 수행되지 않았 음을 확인하십시오.
-
3.개인적으로 아주 좋은 http://www.datejs.com/ 라이브러리를 사용합니다.
개인적으로 아주 좋은 http://www.datejs.com/ 라이브러리를 사용합니다.
Docco 여기 : http://code.google.com/p/datejs/wiki/APIDocumentation
당신은 당신의 호주 포맷을 취득하려면 다음을 사용할 수 있으며, 윤일 29/02/2012하지 29/02/2011 유효성을 검사합니다 :
jQuery.validator.addMethod("australianDate", function(value, element) { return Date.parseExact(value, "d/M/yyyy"); }); $("#myForm").validate({ rules : { birth_date : { australianDate : true } } });
또한 데이터 http://digitalbush.com/projects/masked-input-plugin/을 표준화하기 위해 마스크 입력 플러그인을 사용
$("#birth_date").mask("99/99/9999");
-
4.다음을 포함하여 거의 모든 날짜 형식을 확인하는 새로운 검증 방법에 대한 예입니다 :
다음을 포함하여 거의 모든 날짜 형식을 확인하는 새로운 검증 방법에 대한 예입니다 :
당신이 PHP로 값을 통과 할 때 그런 다음 한 strtotime으로 변환 할 수 있습니다
여기에 방법을 추가하는 방법입니다 :
$.validator.addMethod("anyDate", function(value, element) { return value.match(/^(0?[1-9]|[12][0-9]|3[0-1])[/., -](0?[1-9]|1[0-2])[/., -](19|20)?\d{2}$/); }, "Please enter a date in the format!" );
그런 다음 새로운 필터로 추가
$('#myForm') .validate({ rules : { field: { anyDate: true } } })
;
-
5.여기에 최근에 나를 위해 일한 특정 코드 예제입니다 :
여기에 최근에 나를 위해 일한 특정 코드 예제입니다 :
// Replace the builtin US date validation with UK date validation $.validator.addMethod( "date", function ( value, element ) { var bits = value.match( /([0-9]+)/gi ), str; if ( ! bits ) return this.optional(element) || false; str = bits[ 1 ] + '/' + bits[ 0 ] + '/' + bits[ 2 ]; return this.optional(element) || !/Invalid|NaN/.test(new Date( str )); }, "Please enter a date in the format dd/mm/yyyy" );
나는 이것이 현재의 플러그인에 문제를 야기한다고 볼 수 있지만 나는이 실제로 내장 된 날짜 유효성 검사 루틴을 대체 있음을 알아 두셔야합니다.
그때 사용하여 양식이 적용 :
$( '#my_form input.date' ).rules( 'add', { date: true } );
-
6.이 날 / 결합 내 원하는 결과를 달성하기 위해 이전의 게시물을 수정하는 것입니다 :
이 날 / 결합 내 원하는 결과를 달성하기 위해 이전의 게시물을 수정하는 것입니다 :
// Override built-in date validator $.validator.addMethod( "date", function (value, element) { //Return NB: isRequired is not checked at this stage return (value=="")? true : isDate(value); }, "* invalid" );
유효성 검사 설정 후 날짜 유효성 검사를 추가합니다. 즉 ({...}) 메소드 $ (양식) .validate를 호출 한 후.
//Add date validation (if applicable) $('.date', $(frmPanelBtnId)).each(function () { $(this).rules('add', { date: true }); });
마지막으로, 주요 ISDATE 자바 스크립트 기능이 영국의 날짜 형식에 대한 수정
//Validates a date input -- http://jquerybyexample.blogspot.com/2011/12/validate-date- using-jquery.html function isDate(txtDate) { var currVal = txtDate; if (currVal == '') return false; //Declare Regex var rxDatePattern = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/; var dtArray = currVal.match(rxDatePattern); // is format OK? if (dtArray == null) return false; //Checks for dd/mm/yyyy format. var dtDay = dtArray[1]; var dtMonth = dtArray[3]; var dtYear = dtArray[5]; if (dtMonth < 1 || dtMonth > 12) return false; else if (dtDay < 1 || dtDay > 31) return false; else if ((dtMonth == 4 || dtMonth == 6 || dtMonth == 9 || dtMonth == 11) && dtDay == 31) return false; else if (dtMonth == 2) { var isleap = (dtYear % 4 == 0 && (dtYear % 100 != 0 || dtYear % 400 == 0)); if (dtDay > 29 || (dtDay == 29 && !isleap)) return false; } return true; }
-
7.존, 당신은 몇 가지 구문 오류는 아래를 참조하십시오, 이것은 나를 위해 일한 있습니다.
존, 당신은 몇 가지 구문 오류는 아래를 참조하십시오, 이것은 나를 위해 일한 있습니다.
<script type="text/javascript"> $(document).ready(function () { $.validator.addMethod( "australianDate", function (value, element) { // put your own logic here, this is just a (crappy) example return value.match(/^\d\d?\/\d\d?\/\d\d\d\d$/); }, "Please enter a date in the format dd/mm/yyyy" ); $('#testForm').validate({ rules: { "myDate": { australianDate: true } } }); });
-
8.
$.validator.addMethod("mydate", function (value, element) { return this.optional(element) || /^(\d{4})(-|\/)(([0-1]{1})([1-2]{1})|([0]{1})([0-9]{1}))(-|\/)(([0-2]{1})([1-9]{1})|([3]{1})([0-1]{1}))/.test(value); });
당신은 할 수 YYYY-MM-DD 또한, 년 / 월 / 일 등의 입력
하지만 달 언젠가 2월 단지 28 이십구일의 크기를 판단 할 수 있습니다.
-
9.체크 아웃 : jQuery를 가면 입력 플러그인
체크 아웃 : jQuery를 가면 입력 플러그인
-
10.@blasteralfred :
@blasteralfred :
내가 나를 위해 정확한 날짜를 확인하는 규칙을 다음있어 (DD MM YYYY)
jQuery.validator.addMethod( "validDate", function(value, element) { return value.match(/(?:0[1-9]|[12][0-9]|3[01]) (?:0[1-9]|1[0-2]) (?:19|20\d{2})/); }, "Please enter a valid date in the format DD MM YYYY"
);
DD / MM / YYYY를 들어
jQuery.validator.addMethod( "validDate", function(value, element) { return value.match(/(?:0[1-9]|[12][0-9]|3[01])\/(?:0[1-9]|1[0-2])\/(?:19|20\d{2})/); }, "Please enter a valid date in the format DD/MM/YYYY"
);
이 01 13 2017 2017년 1월 13일의 유효성을 검사하지 않습니다.
또한 50 12 2017 50/12/2017을 확인하지 않습니다.
-
11.쉬운 예는 다음과 같습니다 HTML5 자동 유형 = "날짜"에 대한 유효합니다.
쉬운 예는 다음과 같습니다 HTML5 자동 유형 = "날짜"에 대한 유효합니다.
<script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/jquery.validate.min.js"></script> <script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/additional-methods.min.js"></script> <script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/localization/messages_es.js"></script> $(function () { // Overload method default "date" jquery.validate.min.js $.validator.addMethod( "date", function(value, element) { var dateReg = /^\d{2}([./-])\d{2}\1\d{4}$/; return value.match(dateReg); }, "Invalid date" ); // Form Demo jquery.validate.min.js $('#form-datos').validate({ submitHandler: function(form) { form.submit(); } }); });
from https://stackoverflow.com/questions/511439/custom-date-format-with-jquery-validation-plugin by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 마우스를 두었을 때와 mouseenter 이벤트의 차이점은 무엇입니까? (0) | 2020.10.11 |
---|---|
[JQUERY] 없음 '액세스 제어 - - 원산지를 허용'헤더가 요청 된 리소스 오류에 존재 (0) | 2020.10.11 |
[JQUERY] 사업부의 높이가 jQuery를 사용하여 변경할 때 검출 (0) | 2020.10.11 |
[JQUERY] 아약스에 대한 설정 시간 제한 (jQuery를) (0) | 2020.10.11 |
[JQUERY] 아약스 요청을 시퀀싱 (0) | 2020.10.11 |