javaScript通用数据类型校验函数(6)

来源:asp之家 时间:2009-07-06 12:49:00 

功能:校验的格式为yyyy年MM月dd日HH时mm分ss秒,yyyy-MM-dd HH:mm:ss,yyyy/MM/dd HH:mm:ss,yyyyMMddHHmmss
提示信息:未输入或输入的时间格式错误
使用:f_check_time(obj)
返回:bool

 

function f_check_time(obj)   
{   
    var time = Trim(obj.value);   
    var dtype = obj.eos_datatype;   
    var format = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));  //日期格式   
    var datePat,matchArray,year,month,day,hour,minute,second;   
  
    if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2}) (HH:mm:ss)$/.test(format))   
        datePat = /^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;   
    else if(/^(y{4})(年)(M{1,2})(月)(d{1,2})(日)(HH时mm分ss秒)$/.test(format))   
        datePat = /^(\d{4})年(\d{1,2})月(\d{1,2})日(\d{1,2})时(\d{1,2})分(\d{1,2})秒$/;   
    else if(format == "yyyyMMddHHmmss")   
        datePat = /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/;   
    else  
    {   
        f_alert(obj,"日期格式不对");   
        return false;   
    }   
    matchArray = time.match(datePat);   
    if(matchArray == null)    
    {   
        f_alert(obj,"日期长度不对,或日期中有非数字符号");   
        return false;   
    }   
    if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2}) (HH:mm:ss)$/.test(format))   
    {   
        year = matchArray[1];   
        month = matchArray[3];   
        day = matchArray[4];   
        hour = matchArray[5];   
        minute = matchArray[6];   
        second = matchArray[7];   
    } else  
    {   
        year = matchArray[1];   
        month = matchArray[2];   
        day = matchArray[3];   
        hour = matchArray[4];   
        minute = matchArray[5];   
        second = matchArray[6];   
    }   
    if (month < 1 || month > 12)   
    {                
        f_alert(obj,"月份应该为1到12的整数");   
        return false;   
    }   
    if (day < 1 || day > 31)   
    {              
        f_alert(obj,"每个月的天数应该为1到31的整数");   
        return false;   
    }        
    if ((month==4 || month==6 || month==9 || month==11) && day==31)   
    {            
        f_alert(obj,"该月不存在31号");   
        return false;   
    }        
    if (month==2)   
    {   
        var isleap=(year % 4==0 && (year % 100 !=0 || year % 400==0));   
        if (day>29)   
        {                  
            f_alert(obj,"2月最多有29天");   
            return false;   
        }   
        if ((day==29) && (!isleap))   
        {                  
            f_alert(obj,"闰年2月才有29天");   
            return false;   
        }   
    }   
    if(hour<0 || hour>23)   
    {   
        f_alert(obj,"小时应该是0到23的整数");   
        return false;   
    }   
    if(minute<0 || minute>59)   
    {   
        f_alert(obj,"分应该是0到59的整数");   
        return false;   
    }   
    if(second<0 || second>59)   
    {   
        f_alert(obj,"秒应该是0到59的整数");   
        return false;   
    }   
    return true;   
}

判断当前对象是否可见

function isVisible(obj){   
    var visAtt,disAtt;   
    try{   
        disAtt=obj.style.display;   
        visAtt=obj.style.visibility;   
    }catch(e){}   
    if(disAtt=="none" || visAtt=="hidden")   
        return false;   
    return true;   

 

标签:函数,JavaScript,验证
0
投稿

猜你喜欢

  • 18个Python脚本可加速你的编码速度(提示和技巧)

    2022-11-09 16:54:34
  • sql server 中合并某个字段值的实例

    2024-01-13 02:39:59
  • Python正则表达式常用函数总结

    2023-07-27 12:37:41
  • Python存储读取HDF5文件代码解析

    2021-07-24 22:33:09
  • 如何基于Python按行合并两个txt

    2021-03-19 08:24:41
  • Pycharm学习教程(5) Python快捷键相关设置

    2021-08-08 18:56:44
  • MySQL为例讲解JDBC数据库连接步骤

    2024-01-25 06:14:52
  • 优化mysql数据库的经验总结

    2024-01-17 23:56:24
  • python 随机生成10位数密码的实现代码

    2021-08-01 23:49:02
  • Java 数据库连接池c3p0 介绍

    2024-01-22 02:44:24
  • Python+pytorch实现天气识别

    2021-09-23 18:49:13
  • Centos6.5下Jdk+Tomcat+Mysql环境安装图文教程

    2024-01-23 04:35:10
  • Python通过正则库爬取淘宝商品信息代码实例

    2021-12-09 18:49:55
  • Golang 正则匹配效率详解

    2024-01-30 03:41:47
  • 使用FSO把文本信息导入数据库

    2007-09-27 20:20:00
  • 给自定义对象加上自定义事件的支持的教程

    2023-10-14 20:49:00
  • Python属性和内建属性实例解析

    2023-06-10 18:22:15
  • SQL Server 交叉表查询 case

    2024-01-18 19:05:48
  • Python while 循环使用的简单实例

    2022-11-16 15:56:18
  • 使用python绘制常用的图表

    2022-02-16 19:47:33
  • asp之家 网络编程 m.aspxhome.com