用js 限制 下面2个输入框。 <input type="text" id="id1" />
 <input type="text" id="id2" />要求: 若 不满足格式的话,就不让其显示在 text里面。(还要防止复制非法格式数据,防止输入多个".",要浏览器兼容)id1输入规则: 最多输入12位整数,和2位小数。 即:可以是整数,也可以是小数。若是小数的话,只能小数为2位id2输入规则: 最多输入 3位整数,4位小数。注意: 非法格式 在键被按下的时候 就不让其显示在 text 里面。在线等!!!!!!!!!!!!

解决方案 »

  1.   

    <script type="text/javascript">
    function noNumbers(e)
    {
    var keynum
    var keychar
    var numcheckif(window.event) // IE
      {
      keynum = e.keyCode
      }
    else if(e.which) // Netscape/Firefox/Opera
      {
      keynum = e.which
      }keychar = String.fromCharCode(keynum)
    //这里写一个正则表达式过滤一下
    numcheck = /\d/
    return !numcheck.test(keychar)
    }
    </script>
    </head><body>
    <form>
    <input type="text" onkeydown="return noNumbers(event)" />
    </form>
      

  2.   

    你这是直接将 W3C 网站上的 onkeydown 例子拉下来了啊。。
    我要能实现我功能的。自己写的不能用。。愁啊
      

  3.   

    <!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=gb2312" />
    <title>无标题文档</title>
    <script type="text/javascript">
    function noNumbers(e)
    {
    var keynum
    var keychar
    var numcheck
    if(window.event) // IE
    {
      keynum = e.keyCode
    }
    else if(e.which) // Netscape/Firefox/Opera
    {
      keynum = e.which
    }
    keychar = String.fromCharCode(keynum)
    //可能这段正则表达式有问题,导致我第二个判断有问题。
    numcheck = /(\d{1-12})|((\d{1-12})(\.))|((\d{1-12})(\.)(\d{0-2}))/;
    var numch = /(\d)|(\.)/;
    if(numch.test(keychar))
    {
    if(document.getElementById('text1').value!="")
    {
    if(numcheck.test(document.getElementById('text1').value))
    {
    return true;
    }
    else
    {
    return false;
    }
    }
    }
    else
    {
    return false;
    }
    }
    </script>
    </head>
    <body>
    <form>
    <input type="text" id="text1" onkeydown="return noNumbers(event)" maxlength="12" />
    </form>
    </body>
    </html>
    这是一个思路,因为我对正则表达式也不是很好,并且现在不可能因为你这个专门来,我只能给你这个思路!