使用delphi的intraweb进行web编程,发现其文本框的日期格式只有dd-mm-yyyy格式。想在客户端用javascript设置文本输入框的输入格式为“yyyy-mm-dd”,即用户只以输入“yyyy”、“mm”、“dd”部分,中间的“-”自动产生。

解决方案 »

  1.   

    my97date
    挺不错的一个日历控件....api详细...
      

  2.   

    Ext.util.Format.dataRenderer('Y-m-d');
      

  3.   

    我只想也只能对现成的文本输入框进行改造,不以引用第三方组件,因为我用的工具是delphi,无法只持第方的js组件。
      

  4.   

    这么简单的东西 还要什么控件自己写个:<SCRIPT language=javascript>
    <!--
    function add(obj){
    //获取文本框的长度
    var length=obj.value.length;
    //自动添加"-"
    if((length==4||length==7)&&event.keyCode!=8){
    obj.value=obj.value+'-';
    }
    }
    //校验yyyy-MM-dd格式
    function check(obj){
    var patm=/^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)$/;
    if(obj.value !="" && !patm.exec(obj.value)){
    alert("格式有误,参照:yyyy-MM-dd !");
    obj.focus();
    obj.select();
    }
    }
    //-->
    </SCRIPT>
    <table>
      <tr>
        <td><input type="text" name="t" maxlength="10" onkeyup="add(this)" onblur="check(this)"/></td>
      </tr>
    </table>
    </body>
      

  5.   

    楼上的兄弟,你的代码基本符合要求,如果直接运行你的代码没有问题。
    但是将代码分别拷入delphi输入框的OnKeyUp和Onblur时,判断日期长度不起作用。
      

  6.   

    按理说,delphi是忠实地执行Js代码,应该是你的代码有不足的地方
      

  7.   

    想给kaoh1631全分,但给不起,不和为何
      

  8.   

    http://www.diysys.com有很多关于php,mysql,js,css的信息,适合新手和进阶者
      

  9.   

    <SCRIPT language=javascript>
    <!--
    function add(obj){
        //获取文本框的长度
        var length=obj.value.length;
        //自动添加"-"
        if((length==4||length==7)&&event.keyCode!=8){
            obj.value=obj.value+'-';
        }
    }
    //校验yyyy-MM-dd格式
    function check(obj){
        var patm=/^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)$/;
        if(obj.value !="" && !patm.exec(obj.value)){
            alert("格式有误,参照:yyyy-MM-dd !");
            obj.focus();
            obj.select();
        }
    }
    //-->
    </SCRIPT>
    <table>
      <tr>
        <td><input type="text" name="t" maxlength="10" onkeyup="add(this)" onblur="check(this)"/></td>
      </tr>
    </table>
    </body>
      

  10.   

    <SCRIPT language=javascript>
    <!--
    function add(obj){
      //获取文本框的长度
      var length=obj.value.length;
      //自动添加"-"
      if((length==4||length==7)&&event.keyCode!=8){
      obj.value=obj.value+'-';
      }
    }
    //校验yyyy-MM-dd格式
    function check(obj){
      var patm=/^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)$/;
      if(obj.value !="" && !patm.exec(obj.value)){
      alert("格式有误,参照:yyyy-MM-dd !");
      obj.focus();
      obj.select();
      }
    }
    //-->
    </SCRIPT>
    <table>
      <tr>
      <td><input type="text" name="t" maxlength="10" onkeyup="add(this)" onblur="check(this)"/></td>
      </tr>
    </table>
    </body>
    怎么样