나는 DATE, MONTH, YEAR에 대해 3 개의 드롭 다운 상자를 유지했습니다. 입력 한 날짜가 FEB 월에 29 이상인 경우 false를 반환하는 유효성 검사 함수가 필요합니다. 윤년이라면 FEB는 29를 받아 들여야합니다. 다음 자바 스크립트를 사용했습니다.생년월일에 대한 유효성 확인
날짜 필드에 값 27,28을 입력하더라도 메시지가 표시됩니다. 이걸로 나를 도울 수 있을까?
다음자바 스크립트 코드가 ..
var myDayStr = document.UserReg.Date.value;
var myMonthStr = document.UserReg.Month.value;
var myYearStr = document.UserReg.Year.value;
var myMonth = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
var validMonthLength = ['',31,28,31,30,31,30,31,31,30,31,30,31];
var myDateStr = myDayStr + ' ' + myMonthStr + ' ' + myYearStr;
var myDate = new Date();
myDate.setFullYear(myYearStr, myMonthStr, myDayStr);
if (myDate.getMonth() != myMonthStr) {
alert(' sorry, but "' + myDateStr + '" is NOT a valid date of birth.');
return false;
}
var testDate = new Date(myYearStr,(myMonthStr-1),myDateStr);
if ((myMonthStr == '02') && (myDateStr != testDate.getDate())) {
alert("There is no dates above 28 in February of "+myYearStr);
return false;
}
if (myMonthStr != 2) {
if (myDateStr > validMonthLength[myMonthStr])
{
alert("Invalid date for month chosen");
return false; }
}
작업 시도 할 수동 생성 ((myMonthStr의 == '02 경우 ') && (myDateStr! = testDate.getDate())) { 경고 ("2 월에"+ myYearStr + "또는"+ myDateStr + "이 (가)"+ testDate.getDate())와 같지 않은 28 일 이후의 날짜가 없습니다. –