验证日期格式为xxxx-xx-xx的方法如何写

解决方案 »

  1.   


    s = "2009-02-29"
    if(validate(s)) alert("OK")
    else alert("日期错误")function validate(s){
        var re = /^\d{4}\-\d{2}\-\d{2}$/;
        if(!re.test(s)) return false;
        var a = s.split("-");
        var yy = parseInt(a[0],10);  
        var mm = parseInt(a[1],10);  
        var dd = parseInt(a[2],10);  
        var dt = new Date(yy,mm-1,dd);
        y = dt.getFullYear();
        m = dt.getMonth()+1;
        d = dt.getDate();
        return (y==yy && m==mm && d==dd);
    }
      

  2.   

    // 判断输入是否是有效的长日期格式 - "YYYY-MM-DD HH:MM:SS" || "YYYY/MM/DD HH:MM:SS"
    function isdatetime(str)
    {
        var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
        if(result==null) return false;
        var d= new Date(result[1], result[3]-1, result[4], result[5], result[6], result[7]);
        return (d.getFullYear()==result[1]&&(d.getMonth()+1)==result[3]&&d.getDate()==result[4]&&d.getHours()==result[5]&&d.getMinutes()==result[6]&&d.getSeconds()==result[7]);
    }
    自己改下
      

  3.   

    日期函数?咱自己写过……http://1229363.blog.163.com/blog/static/1974342720076134105234/