+ -
当前位置:首页 → 问答吧 → 【求助】关于判断时间格式的正则表达式……

【求助】关于判断时间格式的正则表达式……

时间:2011-12-18

来源:互联网

以下是一段判断时间输入格式是否匹配的js代码,匹配的正则表达式是我在http://bbs.blueidea.com/thread-1685629-1-1.html#上面找到的,现在我这里的情况是sensor、a、b的值都传过来了,为某一确定的时间如:2011-10-14 22:07:23,但是当通过正则表达式匹配后用alert(ta)输出却显示为null,而上面那个网址中同样是用的这样一个正则表达式却可以,经过我的检测我也觉得是在匹配的时候出现了问题,但是怎么也找不到原因和解决的方法,还请哪位大侠给力赐教啊!万分感激!!!!

<script>
function checkForm2(o){
    var sensor=o.sensor.value;
    var a=o.begginTime.value;
        //var a="2010-01-01 00:00:00";
    var b=o.dateline.value;
        //alert(a);
        //ta=a.match(/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        //tb=b.match(/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        ta=a.match (/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        tb=b.match (/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        alert(ta);
        if(sensor==0){
            alert("请选择传感器类型!");
                return false;
        }
        if(ta==null || tb==null ){
            alert("您输入的时间格式不正确,请重新输入!");
                return false;
        }else{
            form2.submit();
        }
}
</script>

作者: maybezi   发布时间: 2011-12-18

你这里面有全角的符号吧。
//var a="2010-01-01 00:00:00";
    var b=o.dateline.value;
        //alert(a);
        //ta=a.match(/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        //tb=b.match(/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        ta=a.match (/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
        tb=b.match (/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
这里面的部分,建议你用英文的输入法,并将输入法设置成半角的符号。

作者: php-fish   发布时间: 2011-12-20