Validation. js 에 중국어 날짜 인증 추가
1934 단어 JavaScript
예전 에 ajax cn. org 에 동시에 발 표 된 작은 글 이 었 지만 나중에 한 친구 가 더 간편 한 방법 으로 돌 아 왔 습 니 다.
vaidation. js 는 호주 날짜 형식 검증 을 가지 고 있 기 때문에 중국어 날짜 (yyy - mm - dd, yyy / mm / dd, yyy. mm. dd) 를 검증 하려 면 스스로 확장 해 야 합 니 다. 다음은 제 가 만 든 확장 입 니 다. 부족 하면 지적 해 주 십시오!
Validation.add('validate-date-cn', 'Please use this date format: yyyy/mm/dd. For example 2006/03/17 for the 17th of March, 2006.', function(v){
/*-- :( ) + ( ) + ( ) --*/
if(!/d{4}[.-/]d{1,2}[.-/]d{1,2}/.test(v))
{
return false;
} /*-- --*/
var MonthDays=new Array(31,28,31,30,31,30,31,31,30,31,30,31); /*-- --*/
var tempArray = v.split(/[.-/]/); var mYear = tempArray[0];
var mMonth = tempArray[1];
var mDay = tempArray[2]; /*-- --*/
if(mYear <= 0 || mYear > 9999)
{
return false;
} /*-- --*/
if(mMonth <= 0 || mMonth > 12)
{
return false;
} /*-- --*/
var RightDay = 0;
if(mMonth == 2)
RightDay = (((mYear%4 == 0) && (mYear%100 != 0) || (mYear%400 == 0))? 29: 28);
else
RightDay = MonthDays[mMonth-1]; /*-- --*/
if(mDay <= 0 || mDay > RightDay)
{
return false;
} /*-- , --*/
return true;
더 간단 한 방법:
/* :( ) + ( ) + ( ) */ if(!/^(?:([0-9]{4}-(?:(?:0?[1,3-9]|1[0-2])-(?:29|30)|((?:0?[13578]|1[02])-31)))|([0-9]{4}-(?:0?[1-9]|1[0-2])-(?:0?[1-9]|1d|2[0-8]))|(((?:(dd(?:0[48]|[2468][048]|[13579][26]))|(?:0[48]00|[2468][048]00|[13579][26]00))-0?2-29)))$/.test(v)) { alert('false'); return false; }
이 건 윤년 이 고 뭐 고 다 생각 하 는 정칙 이 야.
정규 만세.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기초 정리 - 1문자 (String) 숫자 (Number) 불린 (Boolean) null undefined 심볼 (Symbol) 큰정수 (BigInt) 따옴표로 묶어 있어야 함 Not-A-Number - 숫자 데이터 / 숫자로 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.