上次看到csdn里有这个贴子,觉得挺有用的,现在找不到了,真后悔没有收藏下来,谁知道如何让文本框内只能输入数字的代码?
给小弟看看,顺便讲一下,是个什么意思?先谢啦!!!!

解决方案 »

  1.   

    function   ValidNum(strnum){   
            var   ValidChars   =   "0123456789   ";   
            var   Valid=1;   
            var   Char;   
            for   (i   =   0;   i   <   strnum.length   &&   Valid   ==   1;   i++)   {     
                  Char   =   strnum.charAt(i);     
                  if   (ValidChars.indexOf(Char)   ==   -1){   
                        Valid   =   -1;   
                  }   
            }   
            return   Valid;   
      }   
      --------------------   
      if((Validnum(strTnum))==-1){   
      alert("不合法!");   
      return   false;   
      

  2.   

    <textarea name="tt" onkeyup="value=value.replace(/[^\d]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"></textarea>
      

  3.   

    方法二:
    <input   type=text   name=text1>   
        
      <script   language=vbscript>   
      <!--   
      sub   text1_onkeypress()   
              if   window.event.keycode<asc("0")   or   _   
                                                window.event.keycode>asc("9")   then   
                      window.event.keycode=0   
              end   if   
      end   sub   
      //-->   
      </script>
      

  4.   

    <input name="year" type="text"  size="4" maxlength="4" onKeyUp="this.value=this.value.replace(/[^0-9]/g,'')" >
    我刚才又看了一遍贴,找到了这个,
    谢谢大家,不过我看不懂,onKeyUp后面这些,应该怎么理解??把输入值替换成数字???谁给我解释一下
      

  5.   

    onKeyUp="this.value=this.value.replace(/[^0-9]/g,'')" 
    这句话应该是当按键弹起时,得到当前输入值,并替换所有非数字的值为空,达到过滤效果
      

  6.   

    onkeyup()是释放一个按键时判断输入的是不是0-9的数字([^0-9]=非0-9的数字),如果不是的话将其替换成空值(表达式中的''),replace有两个参数分别是【(/[^0-9]/g】和【''】