codice:
function isTime(str) {
if (str.length>2&&str.indexOf(":")<=0) str = str.substr(0,str.length-2)+":"+str.substr(str.length-2);
str="0"+str+":0"
spz = str.split(":");
hh = parseInt(spz[0],10)
mm = parseInt(spz[1],10)
if ((hh==24&&mm==0) || (hh<24&&mm<60)) return (hh*60+mm);
return false;
}
function testO(obj) {
// verifica che sia stato introdotto un orario valido
obj.style.background='white'
RE = /[^\d^\,^\:^\.]/gi
obj.value=obj.value.replace(RE,"");
RE = /[\,\.]/gi
obj.value=obj.value.replace(RE,":");
diff = isTime(obj.value)
if (diff>0) {
hh=Math.floor(diff/60)
mm=(diff%60)
diff = String(100+hh).substr(1,2)+":"+String(100+mm).substr(1,2);
obj.value=diff
} else {
// obj.select()
if (obj.value!="" ) {
obj.style.background='yellow'
alert("Ora Errata")
// obj.focus()
}
}
}
si usa con:
<input type)text onblur="testO(this)">