年月份的输入   我只能输入正取的年月份(比如说2007-12-21是正取的  而2007-52-61则是错误的)   
还有就是当我输入完年后  后面自动出现-   
比如当我输入完2007  后面自动出现-     当我输入完01  后面自动出现-   当我输入完16   结束                谢谢

解决方案 »

  1.   

    检查日期格式是正确的function MM_checkDate(sjk) { //检查日期格式;
    //发文日期格式
    var rqbz = true ;
    var rq = String(sjk);
    if (rq != ""){
    var rq_text = rq.split("-");
    if (rq_text.length != 3) {  
    rqbz= false; 
    } else {
    var nan = rq_text[0];//年
    if ((nan < 1900)||(nan > 2200)) {
    rqbz= false; 
    } else {
    var yue = rq_text[1];
    if ((yue < 1)||(yue > 12)) {
    rqbz= false;
    } else {
    var ri = rq_text[2];
    if (ri<1) {
    rqbz= false;
    } else {
    var tian = getDays(yue-1,nan);//得到该月的天数;
    if (ri>tian) rqbz= false;
    }
    }
    }
    }
    }
    return rqbz;//返回true--表示真的
    }
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" />
    <title></title>
    </head>
    <script>
    function doFunction(obj){
    if(obj.value.length == 4){
    obj.value = obj.value + "-"
    }
    if(obj.value.length == 7){
    obj.value = obj.value + "-"
    }
    }

    function isdate(ptxtBuff) {
    var s = ptxtBuff;
    var ltxtDate;


    if (s.length==0) return true;

    if (s.length!=10) return false;
    if (s.charAt(4) != "-" || s.charAt(7) !="-") return false;
    if (isNumber(s.substring(0,4)+s.substring(5,7)+s.substring(8,10))==false) return false;
    ltxtDate = new Date(s.substring(0,4),eval(s.substring(5,7))-1,s.substring(8,10));
    if (ltxtDate==null) return false;
    if (ltxtDate.getDate()!=eval(s.substring(8,10)) || ltxtDate.getMonth()!=eval(s.substring(5,7))-1) return false;
    return true;
    }

    function check(obj){
    if(isdate(obj.value) == false){
    alert("errDate");
    return false;
    }
    }

    function isNumber(moji){
    for(var i=0; i<moji.length; i++){
    if (!(moji.charAt(i)>="0" && moji.charAt(i)<="9")) return false;
    }
    return true;
    }
    </script>
    <body>
    gfdsgfdgsfdsgfsgfds
    <input type="text" name="b" onpropertychange="doFunction(this)" onblur="check(this);"> 
    </body></html>
      

  3.   

    非常感谢 !   帮忙 给我写的详细点好吗  加上html代码可以吗?
    再次谢谢!
      

  4.   

    lion98(韩宾)   可否帮我改一下  是要当我输入超过12月份的  直接就不能输入  
    现在还是可以输入
       谢谢
      

  5.   

    加上html代码可以吗?
    这不就是HTML代码,还要什么?
      

  6.   

    请circlew20()   帮忙