`
zheyiw
  • 浏览: 999830 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

时间输入框和时间检验

阅读更多
<html>
<head>
    <title>时间输入的校验--包子剑客</title>
    <!-- 2009.12.12 包子剑客 广州-->
</head>
<body>
            时间输入的校验<br/>
            请输入时间:           <br/>
          <input type="text" onblur="isTimeFormat(this)" onkeyup="verify(this)" onkeypress="return inputNumber(event,this);"  title="时间格式:00:00"/>
          <br/>
</body>
</html>

<script>
   //以下是时间的显示相关函数
   function isTimeFormat(str) {
      var a = str.value.match(/^([0-2][0-9]):([w0-5][0-9])$/);
      if (a == null) {
         alert("时间格式不对,已经被自动修正,请留意。");
         var length=str.value.length;
         if (length==1) {str.value="0" + str.value +":00";}
         else if (length==2) {str.value+=":00";}
         else if (length==3) {str.value+="00";}
         else if (length==4) {str.value+="0";}
         else {str.value="00:00";}
         str.select();
         return false;
      }
      return true;
   }  	
   //格式化时间格式
   function verify(text){
    var hour;
    var minute;
    var tmp;
    var index;
    var textValue = text.value;
    if(textValue.length == 1 ) {
      if (textValue == ":"){text.value = "00:"; }
      return true;
    }
    if(textValue.length == 2 ) {
      if (!isNum(textValue)) text.value = "0" + textValue;
      return true;
    }
    if(textValue.length > 2){ //当长度超过2时,进行处理
        hour = textValue.substr(0,2); //取前两位数字,即小时
        if(!isNum(hour)){//不是数字
            text.value = '00';
            return;
        }
        if(hour < 24){ //10<x<24
           text.value = hour + ':';//显示小时
           index = textValue.indexOf(':'); //定位冒号
           minute = index > 0 ? textValue.substr(index + 1,2) : textValue.substr(2,2);
           if(!isNum(minute)){//不是数字
                text.value = hour + ':00';
                return;
            }
           if(minute < 59){
            tmp = hour + ':' + minute;
           }else{
            tmp = hour + ':59';
           }
        }else{ //x>=24
           hour = '0' + textValue.substr(0,1);
           text.value = hour + ':' + text.value.substr(1,1);
           index = textValue.indexOf(':');
           minute = index > 0 ? textValue.substr(index + 1,2) : textValue.substr(1,2);
           if(!isNum(minute)){//不是数字
                text.value = hour + ':00';
                return;
            }
           if(minute < 59){
             tmp = hour + ':' + minute;
           }else{
             tmp = hour + ':59';
           }
        }
    text.value = tmp;//输入“小时:分钟”格式
    }
   }
   //只让输入数字和:
   function inputNumber(e,textValue){
    var keynum;
    var keychar;
    var numcheck;
    if(window.event) // IE
    {
        if(58==e.keyCode) {return true;}
        keynum = e.keyCode
    }else if(e.which) // Netscape/Firefox/Opera
    {
        keynum = e.which
    }
    keychar = String.fromCharCode(keynum);
    return isNum(keychar);
   }
   //是否为数字
   function isNum(str){
   	if(""==str){
   	  return true;
   	}
   	var reg = /\D/; 
   	return str.match(reg)==null;
   }
   //以上是时间的显示相关函数
</script>
分享到:
评论

相关推荐

    Delphi实现的QQ自动聊天功能.rar

      用户不可以定义,随总循环时间和进程多少而计算。   间隔发送时间=总循环时间÷列表中进程数量。  行号显示与指定行号按钮   行号显示“第?行”为当前进程正在发送的文本行。   指定行号按钮与行号显示...

    万能Ping工具

    Ping工具既可以对一个IP,一个域名进行Ping操作,也可以同时对多个IP,多个域名进行Ping操作,当输入多个时两两之间用空格隔开,然后单击输入框右侧的“开始Ping”按钮即可开始对输入框中的IP或域名进行Ping操作 ...

    人工智能-项目实践-信息检索-面向商品评论数据的文本信息检索系统

    (2) 数据统计:以构建倒排索引的文档为基础,检验 Heaps’ law 和 Zipf’s law 在该数 据集上是否正确,要求以曲线图或表格的方式来呈现,包含定量的结果。 (3) 开发的信息检索系统:要求支持基本的用户交互,包括...

    javascript 时间比较实现代码

    web开发中有时需要对输入框中的时间(主要是开始时间和结束时间)进行比较,网上搜索了一番,发现有不少是无效的,以下方法经小弟检验确实有效,特此共享。(请关注红色部分) function ValidtorTime(){ var d1 =...

    WEB前端助手(FeHelper)_v6.2.crx

    包括Unicode编码和解码、UTF-8字符串编码和解码、Base64字符串编解码、字符串MD5编码,前端非常实用的工具 图片Base64编码 对图片文件进行base64编码,直接拷贝datauri格式的数据 二维码生成器 能对网址、普通文本...

    《程序天下:JavaScript实例自学手册》光盘源码

    第3章 字符串文本和输入框特效 3.1 只带下划线的输入框 3.2 限定文本框可输入字符数 3.3 文字过长的省略号 3.4 输出26个英文字母 3.5 首字母变为大写 3.6 textarea自适应文字行数 3.7 禁止文本框的拷贝和粘贴 3.8 ...

    QQ注册页面测试用例

    4.鼠标焦点离开昵称输入框" "提示:1.请输入昵称 2.昵称输入框变红" 1 V_0023 注册页面 "1.进入QQ邮箱账号申请页面 2.点击进入昵称输入框 3.输入空格符号 4.鼠标焦点离开昵称输入框" "提示:1.昵称不能为空格 2....

    程序天下:JavaScript实例自学手册

    第3章 字符串文本和输入框特效 3.1 只带下划线的输入框 3.2 限定文本框可输入字符数 3.3 文字过长的省略号 3.4 输出26个英文字母 3.5 首字母变为大写 3.6 textarea自适应文字行数 3.7 禁止文本框的拷贝和粘贴 3.8 ...

    helper.rar

    包括Unicode编码和解码、UTF-8字符串编码和解码、Base64字符串编解码、字符串MD5编码,前端非常实用的工具 图片Base64编码 对图片文件进行base64编码,直接拷贝datauri格式的数据 二维码生成器 能对网址、普通文本...

    常用js大全,javascript校验大全

    1.73 将添加的输入框元素和Validator进行绑定。.. 89 1.74 根据标签展示的(16,2+)"&gt; 的validator属性获取校验器类名(DecimalValidator) 91 1.75 删除一行. 92 1.76 根据箱型,校验箱数与组数的值是否符合规定 93 ...

    python做接口测试的必要性

    接口测试主要用于检测外部系统与内部系统之间,以及系统内部各 个子系统之间的交互点。其测试的重点是,检查数据的交换、传递和控 制管理过程,以及系统间的逻辑依赖关系等。 为什么要做接口测试 1.传统的测试方法...

    js脚本大全 js验证大全 压缩包

    1.73 将添加的输入框元素和Validator进行绑定。.. 89 1.74 根据标签展示的(16,2+)"&gt; 的validator属性获取校验器类名(DecimalValidator) 91 1.75 删除一行. 92 1.76 根据箱型,校验箱数与组数的值是否符合规定 93 ...

    asoft签到管理系统tykq3.5_build20110125

    1、 修改后台系统设置的“每日进行当日签到统计时间”,使得当前该功能关闭时,时间输入框为不可用状态。 2、 后台增加新的开关功能,现在可以控制新注册用户是否需要后台审核了。 3、 会员注册模块有更新,现在...

    手机控制器

    ●功能说明:本软件可以利用手机扣扣控制电脑,当然,前提是电脑和手机都是要能上网的 ●主要功能:信息提示,关机,重启,注销,冬眠,锁住鼠标,锁住键盘,解锁键盘鼠标,截图(整个桌面),运行软件以及检测退出...

    iphong开发的文档

    据字符串的多少,动态调整UILabel的宽度或高度ios 将字符串转换为日期时间格式ios获取时间和星期(注意week1是星期天)隐藏状态栏屏幕变动检测设置视图背景图片键盘覆盖输入框将plist文件中的数据赋给数组手指的触摸从...

    秋忆工作室在线文件管理器 v4.4.rar

     6、每个用户管理特定目录,采用Session加密变量检测,用户不能通过修改Session值提升权限。  7、对IE浏览器与Netscape浏览器都兼容。  8、用户在同一时间只能在一个IP登陆,即不能同时在两个以上IP登陆。  9...

    55种网页小技巧 ---- 下载无需扣分,具有一定收藏价值

    显示个人客户端机器的日期和时间.html 显示所有链接 .html 最小化、最大化、关闭窗口.html 查看某网址的源代码 .html 查看网页源代码.html 检查一段字符串是否全由数字组成.html 检测某个网站的链接速度.html...

    CocoStudio v0.2.4.1

    V0.2.4.1 版本更新说明 UI编辑器: 1. 解决UI编辑器0.2.4.0版本因为透明度引起的问题。 2. 解决锚点重新打开不正确的问题。 3. 层容器颜色设置在属性窗口添加了填充颜色开关。...更新时间:2013年7月16日

Global site tag (gtag.js) - Google Analytics