「時刻の入力チェック」javascriptソース


<SCRIPT language="JavaScript">
<!--
function jikoku_check(in_str){
// 入力した内容が時刻にマッチしているかどうかチェック
if (in_str.value!="") {
if (in_str.value.length <3 || in_str.value.length > 5) {
alert("時刻を正しく入力してください");
in_str.focus();
return false;
}
ji = in_str.value.split(":");
if (ji.length > 2) {
alert("時刻を正しく入力してください");
in_str.focus();
return false;
}
if (ji[0].length == 4 && !(ji[0].match(/¥D/))) {
jikan = ji[0].substring(0,2)+":"+ji[0].substr(2);
if (ji_ck(jikan)) {
in_str.value = jikan;
return true;
}
}
if (ji[0].length == 3 && !(ji[0].match(/¥D/))) {
jikan = ji[0].substring(0,1)+":"+ji[0].substr(1);
if (ji_ck(jikan)) {
in_str.value = jikan;
return true;
}
}
if (!(ji[0].match(/¥D/)) && !(ji[1].match(/¥D/))) {
if (ji[1].length ==2) {
jikan = ji[0]+":"+ji[1];
}
if (ji[1].length ==1) {
jikan = ji[0]+":0"+ji[1];
}
if (ji_ck(jikan)) {
in_str.value = jikan;
return true;
}
}
alert("時刻を正しく入力してください");
in_str.focus();
return false
}
}

//時刻フォーマット(:で区切られた2桁:2桁の文字列)の文字が時刻として正しい
かチェック
function ji_ck(str) {
ji = str.split(":");
if (Number(ji[0])>=0 && Number(ji[0])< 24 && Number(ji[1])>=0 &&
Number(ji[1])< 60) {
return true
} else {
return false
}
}
//-->
</SCRIPT>