打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
时间输入的校验 - - ItEye技术网站
  1. <html>   
  2. <head>   
  3.     <title>时间输入的校验--包子剑客</title>   
  4.     <!-- 2009.12.12 包子剑客 广州-->   
  5. </head>   
  6. <body>   
  7.             时间输入的校验<br/>   
  8.             请输入时间:           <br/>   
  9.           <input type="text" onblur="isTimeFormat(this)" onkeyup="verify(this)" onkeypress="return inputNumber(event,this);"  title="时间格式:00:00"/>   
  10.           <br/>   
  11. </body>   
  12. </html>   
  13.   
  14. <script>   
  15.    //以下是时间的显示相关函数   
  16.    function isTimeFormat(str) {   
  17.       var a = str.value.match(/^([0-2][0-9]):([w0-5][0-9])$/);   
  18.       if (a == null) {   
  19.          alert("时间格式不对,已经被自动修正,请留意。");   
  20.          var length=str.value.length;   
  21.          if (length==1) {str.value="0" + str.value +":00";}   
  22.          else if (length==2) {str.value+=":00";}   
  23.          else if (length==3) {str.value+="00";}   
  24.          else if (length==4) {str.value+="0";}   
  25.          else {str.value="00:00";}   
  26.          str.select();   
  27.          return false;   
  28.       }   
  29.       return true;   
  30.    }      
  31.    //格式化时间格式   
  32.    function verify(text){   
  33.     var hour;   
  34.     var minute;   
  35.     var tmp;   
  36.     var index;   
  37.     var textValue = text.value;   
  38.     if(textValue.length == 1 ) {   
  39.       if (textValue == ":"){text.value = "00:"; }   
  40.       return true;   
  41.     }   
  42.     if(textValue.length == 2 ) {   
  43.       if (!isNum(textValue)) text.value = "0" + textValue;   
  44.       return true;   
  45.     }   
  46.     if(textValue.length > 2){ //当长度超过2时,进行处理   
  47.         hour = textValue.substr(0,2); //取前两位数字,即小时   
  48.         if(!isNum(hour)){//不是数字   
  49.             text.value = '00';   
  50.             return;   
  51.         }   
  52.         if(hour < 24){ //10<x<24   
  53.            text.value = hour + ':';//显示小时   
  54.            index = textValue.indexOf(':'); //定位冒号   
  55.            minute = index > 0 ? textValue.substr(index + 1,2) : textValue.substr(2,2);   
  56.            if(!isNum(minute)){//不是数字   
  57.                 text.value = hour + ':00';   
  58.                 return;   
  59.             }   
  60.            if(minute < 59){   
  61.             tmp = hour + ':' + minute;   
  62.            }else{   
  63.             tmp = hour + ':59';   
  64.            }   
  65.         }else//x>=24   
  66.            hour = '0' + textValue.substr(0,1);   
  67.            text.value = hour + ':' + text.value.substr(1,1);   
  68.            index = textValue.indexOf(':');   
  69.            minute = index > 0 ? textValue.substr(index + 1,2) : textValue.substr(1,2);   
  70.            if(!isNum(minute)){//不是数字   
  71.                 text.value = hour + ':00';   
  72.                 return;   
  73.             }   
  74.            if(minute < 59){   
  75.              tmp = hour + ':' + minute;   
  76.            }else{   
  77.              tmp = hour + ':59';   
  78.            }   
  79.         }   
  80.     text.value = tmp;//输入“小时:分钟”格式   
  81.     }   
  82.    }   
  83.    //只让输入数字和:   
  84.    function inputNumber(e,textValue){   
  85.     var keynum;   
  86.     var keychar;   
  87.     var numcheck;   
  88.     if(window.event) // IE   
  89.     {   
  90.         if(58==e.keyCode) {return true;}   
  91.         keynum = e.keyCode   
  92.     }else if(e.which) // Netscape/Firefox/Opera   
  93.     {   
  94.         keynum = e.which   
  95.     }   
  96.     keychar = String.fromCharCode(keynum);   
  97.     return isNum(keychar);   
  98.    }   
  99.    //是否为数字   
  100.    function isNum(str){   
  101.     if(""==str){   
  102.       return true;   
  103.     }   
  104.     var reg = /\D/;    
  105.     return str.match(reg)==null;   
  106.    }   
  107.    //以上是时间的显示相关函数   
  108. </script>  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
JavaScript常用检测脚本
如何用js完美的解析lrc歌词
JS 格式化数据
public.js 银行通用方法
js中用gb2312编码解码
Javascript面试笔试题(考试时间90分钟)前端开发的可以试一下!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服