/*****
* 날짜 유효성 검사
* return : boolean
*****/
function check_date(year,month,day){
if(
year.length == 4 &&
month.length > 0 &&
month.length < 3 &&
day.length > 0 &&
day.length < 3
){
month = month-1; // month - 1 한 의미에 주의
if(month.length == 1) month = '0' + month.toString();
if(day.length == 1) day = '0' + day.toString();
vDate = new Date(year,month,day);
//vDate = new Date();
//vDate.setFullYear(year);
//if(month == "01") vDate.setDate(day); // 월보다 일을 먼저 한 의미를 잊지말것 (ex 2월을 지정하면 30일로 먼저 셋팅이되서 바로 오류가된다)
//vDate.setMonth(month);
if(month != "01") vDate.setDate(day);
if(
vDate.getFullYear() != year ||
vDate.getMonth() != month ||
vDate.getDate() != day
){
return false;
}else{
return true;
}
}else{
return false;
}
}
2월일때는 날짜를 먼저 그 외에는 달을 먼저해야 하는듯 싶다.
예를 들어서 3월 31일의 경우 일을 먼저 하면 날짜의 결과가 3월 2일로 나온다.
원인은 좀더 공부해 봐야겠다..
===============================================
vDate.setFullYear(year); 와 같은 형식으로 날짜를 지정해줘도 기본은 개인 PC 의 시스템 날짜를 따른다... 주의하자
'Story > Javascript' 카테고리의 다른 글
키값을 임의로 지정하는 배열만들기 (0) | 2009.02.23 |
---|---|
두 날짜 사이의 날짜 수 계산 / 몇일인지 계산 (0) | 2009.02.14 |
Firefox 에서 this.parentElement.parentElement.rowIndex 동작하지 않는다. (0) | 2009.01.25 |
주민등록번호 체크 (0) | 2009.01.19 |
법인번호 체크 (0) | 2009.01.19 |