<input type="text" name="bar_code" onblur="if(value!=''&&!/\d+/.test(value))alert('你输入的不是数字')">

解决方案 »

  1.   

    能解释一下这onblur="if(value!=''&&!/\d+/.test(value)每一个符号的具体意思吗?
    非常感谢!:)
      

  2.   

    假如文本框的 value 不为空(value!='') 且(&&) 不全是数字[0-9] 的话则...
      

  3.   

    那我想用函数来写,并且在不是的情况下,文本框要得到焦点,且要清空,我是这样写的,但好像有错:
    <script language="JavaScript1.1">
    function judge_num(eve)
    {
    if(eve.value!=''&&!/\d+/.test(value))
    {
    alert('It is not number');
    }
    self.focus();
    }
    </script><body>
    <input type="text" name="bar_code" onblur="judge_num(this)">
    ....
    </body>
    这哪里有错,是在函数引用的时候吗?
      

  4.   

    sorry 写错了,
    if(eve.value!=''&&!/\d+/.test(value))
    应该是这样:
    if(eve.value!=''&&!/\d+/.test(eve.value))
      

  5.   

    function judge_num(e)
    {
      var s = e.value.replace(/^\s+|\s+$/, '');  //Trim
      if(s != '' && /\D/g.test(s))
      {
        alert('It is not number');
        e.value = "";
        e.focus();
      }
      else e.value = s;
    }