梅花雨做的一个日历控件,在GOOGLE搜索一下,有的是。
或者留个EMAIL

解决方案 »

  1.   

    /^\d{4}-\d{2}-\d{2}$/          //正则表达式,JS里判断
      

  2.   

    我也曾经碰到过这个问题,这么解决的。
    在输入时间的文本框里加入下面的javascript函数就行了。
    function strDateTime(str){
             var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
             if(r == null)
                return false;
             var d = new Date(r[1], r[3]-1, r[4]);
             return (d.getFullYear() == r[1]&&(d.getMonth()+1) == r[3]&&d.getDate() == r[4]);
    }
    str为文本框输入的时间字符串。
      

  3.   

    /^\d{4}-\d{2}-\d{2}$/          //正则表达式,JS里判断这个好像有问题吧,比如我输入2003-23-56那个就判断是正确的,实际上是错的,应该再加上些javascript判断就完整了
      

  4.   

    我提供一个算法:(javascript)
    //功能介绍检查是否是日期
    //要检查的字符串datestr,型如:2004-09-09
    //返回:true,false
    function chkdate(datestr)
    {
    var lthdatestr;
    if (datestr != ""){
    lthdatestr= datestr.length ;
        }else{
    lthdatestr=0;
        } var tmpy="";
    var tmpm="";
    var tmpd="";
    //var datestr;
    var status;
    status=0;
    if ( lthdatestr== 0)
    return 0; for (i=0;i<lthdatestr;i++)
    {
    if ((datestr.charAt(i)<'0'||datestr.charAt(i)>'9')&&datestr.charAt(i)!='-')
    {
    return 0;
    }
    } for (i=0;i<lthdatestr;i++)
    { if (datestr.charAt(i)== '-')
    {
    status++;
    }
    if (status>2)
    {
    //alert("Invalid format of date!");
    return 0;
    }
    if ((status==0) && (datestr.charAt(i)!='-'))
    {
    tmpy=tmpy+datestr.charAt(i);
    }
    if ((status==1) && (datestr.charAt(i)!='-'))
    {
    tmpm=tmpm+datestr.charAt(i);
    }
    if ((status==2) && (datestr.charAt(i)!='-'))
    {
    tmpd=tmpd+datestr.charAt(i);
    } }    year=new String (tmpy);
    month=new String (tmpm);
    day=new String (tmpd);
    if ((tmpy.length!=4) || (tmpm.length!=2) || (tmpd.length!=2))
    {
    //alert("Invalid format of date!");
    return 0;
    }
    if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)))
    {
    //alert ("Invalid month or day!");
    return 0;
    }
    if (!((year % 4)==0) && (month==2) && (day==29))
    {
    //alert ("This is not a leap year!");
    return 0;
    }
    if ((month<=7) && ((month % 2)==0) && (day>=31))
    {
    //alert ("This month is a small month!");
    return 0; }
    if ((month>=8) && ((month % 2)==1) && (day>=31))
    {
    //alert ("This month is a small month!");
    return 0;
    }
    if ((month==2) && (day==30))
    {
    //alert("The Febryary never has this day!");
    return 0;
    }
    return 1;
    }