티스토리 뷰
선택한 날짜와 현재 날짜를 비교해서 과거일 경우 경고창을 띄운다.
// 예약 발송 여부를 선택하는 체크 박스의 object
var obj = document.getElementById("reserve");
// 예약발송 여부를 선택하는 체크 박스가 checked 일 경우
if(obj.checked) {
// 현재 날짜 및 시간
var nowDate = new Date();
// 현재 날짜의 년도
var year = nowDate.getYear();
// 현재 날짜의 월
var month = nowDate.getMonth() + 1;
// 현재 날짜의 일
var date = nowDate.getDate();
// 현재 시간의 시
var hour = nowDate.getHours();
// 현재 시간의 분
var minute = nowDate.getMinutes();
// FireFox일 경우 year에 1900을 더해준다
if((year + "").length < 4) {
year = 1900 + year;
}
// 현재 날짜의 월이 1~9월일 경우 십의 자리에 0을 더해준다.
if((month + "").length < 2) {
month = "0" + month;
}
if((date + "").length < 2) {
date = "0" + date;
}
if((hour + "").length < 2) {
hour = "0" + hour;
}
// yyyymmddhhmi 형식의 현재 날짜 및 시간을 int 형으로 변환
var now = parseInt(year + "" + month + "" + date + "" + hour + "" + minute);
// 사용자의 의해 선택된 예약 날짜 (yyyy-mm-dd) 형식임
var reserveDate = document.getElementById("reserveDate").value;
// yyyy-mm-dd 형식을 yyyymmdd 형식으로 변경
reserveDate = reserveDate.replace(/-/g, "");
// 사용자에 의해 선택된 예약 시간의 시 (01,02 ...59) 형태임
var reserveHour = document.getElementById("reserveHour").value;
// 사용자의 의해 선택된 예약 시간의 분 (10,20... 50) 형태임
var reserveMinute = document.getElementById("reserveMinute").value;
// yyyymmddhhmi 형식의 예약 날짜 및 시간을 int 형으로 변환
var reserve = parseInt(reserveDate+reseveHour+reserveMinunte);
// 예약 설정 된 날짜 및 시간이 현재 날짜 및 시간 보다 작거나 같으면 경고창을 띄운다.
if(reserve <= now) {
alert("예약발송이 가능한 날짜 또는 시간이 아닙니다.");
return;
}
}
============================================================================================================================================
'Language > JavaScript' 카테고리의 다른 글
[ JavaScript ] 정규식 (0) | 2015.11.29 |
---|---|
[ JavaScript ] 문자->숫자 / 숫자->문자 (0) | 2015.11.29 |
[ JavaScript ] Math 올림 : ceil / 버림 : floor / 반올림 : round (0) | 2015.11.29 |
[ JavaScript ] Input에서 Enter(엔터)키를 눌렀을때 수행 (0) | 2015.11.29 |
[ JavaScript ] setTimeout / setInterval - 시간 delay (0) | 2015.11.29 |