You are here: irt.org | FAQ | JavaScript | Form | 3.5 | Q1798 [ previous next ]
The onblur handles the millenium AND Netscape. A side effect of the keyCode test in IE is the user can only type digits and the slash
Script tested in NS4.7 and IE5.5 on window98
<form> <input type="text" name="test" value="" onKeyUp=" if (!document.all) return; key = window.event.keyCode; val = this.value; if (key!=16 && key !=8 && (key<48 || key>57)) { val=val.substring(0,val.length-1); return; } if (val.indexOf('/') == 1) val = '0'+val; if (val.length>3 && val.indexOf('/',3) == 4) val = ''+val.substring(0,3)+'0'+val.substring(3); this.value=val" onBlur=" if (this.value && this.value.length>5) { parts = this.value.split('/'); if (parts.length!=3) return; if (parts[0].length == 1) parts[0]='0'+parts[0]; if (parts[1].length == 1) parts[1]='0'+parts[1]; if (parts[2].length ==2) parts[2]='20'+parts[2]; this.value=parts.join('/'); } "> </form>
Submitted by Michel Plungjan