<script language="JavaScript">
function checkInput() {
   var s;
   s = document.formname.inputname.value;
   for (i = 0; i <= s.length - 1; i++) {
      if (!isNaN(parseInt(s.substring(i, 1)))) {
         alert("input error")!
         return false;
      }
   }
   return true;
}<form name="formname" onsubmit="return checkInput()">
<input type="text" name="inputname">
</form>
</script>

解决方案 »

  1.   

    <input onkeydown="if(!((event.keyCode>=48 && event.keyCode<=57) ||(event.keyCode>=96 && event.keyCode<=105))) alert('不是数字') ">
      

  2.   

    &raquo;&sup1;&Oacute;&ETH;&Ograve;&raquo;&Ouml;&Ouml;·&frac12;·¨&pound;&ordm;
    <script language="VbScript">
    Function CheckInput()
       CheckInput = IsNumeric(document.formname.inputname.value)
    End Function
    </script>
    <script language="JavaScript">
    function check() {
    if (!CheckInput()) {
    alert("Error");
    return false
    }
    return true;
    }
    </script>
    <form name="formname" onsubmit="JavaScript: return check()">
    <input type="text" name="inputname">
    <input type="submit">
    </form>
    </script> 
     
      

  3.   

    BrentIvan的可能可以
    但是用asc码
    有可能不能阻止别人输入中文
      

  4.   

    输入过程中即时检查页面上所有文本框
    <script language="JavaScript">
    function check(){
    for(i=0;i<document.form1.elements.length;i++)
    {
    if(document.form1.elements[i].type=="text")
    {
    entervalue = document.form1.elements[i].value;
    if(entervalue!='-')
    {
    if(((entervalue-0).toString())=="NaN")
    {
    var entervaluelength = entervalue.length;
    document.form1.elements[i].value=entervalue.substring(0,(entervaluelength-1));
    }
    }
    }
    }
    setTimeout("check()",1);
    }
    </script>
    <body onload="check()">
      

  5.   

    如果判断是不是数,那么有现成的函数isNaN(),如果不是数返回true
    如果判断是只有数字组成的字符串,就用下面的函数
    function isNumber(sStr){
      var re=/[\d]+/
      return re.test(sStr)
    }
      

  6.   

    都差不多,只是最好放在onclick或者onsubmit事件中判断,如果用onkeydown或者onkey则要防止onpaste
      

  7.   

    <Html>
    <Head>
    <Script Language= "JavaScript">
    function check(e) {
      if((e.keyCode>=48)&&(e.keyCode<=57))
        return true;
      else
        return false;
    }
    </Script>
    </Head>
    <Body>
    <input type="text" name="id" onKeyPress="return check(event)">
    </Body>
    </Html>
      

  8.   

    <script>
    var str = "12.3242df"
    for(var i=0;i<str.length;i++)
    {
    if(isNaN(parseInt(str.substr(i,1))))
    alert("无效数字")
    }
    </script>
      

  9.   

    var msgNumber="输入数据不是有效的数值";
    var msgSuccess="success";function checkNumber(oDataSrc){
      var sValue=oDataSrc.value;
      var sPrefix="";
      var sTemp=sValue.charAt(0);
      if (sTemp=="+" || sTemp=="-") {
        sPrefix=sTemp;
        sValue=sValue.replace(/^[\+-]/,"");
      }  sValue=sValue.replace(/^(0(?=\d))+/,"");  var sDecimal=oDataSrc.getAttribute("decimal");
      if ( sDecimal==null) sDecimal="0";  var regNum;
      if (sDecimal == "0") regNum=new RegExp("^\\d+$");
      else regNum=new RegExp("^\\d+\\.?\\d{0,"+sDecimal+"}$");  if (!regNum.test(sValue)) return msgNumber;  sValue=sValue.replace(/^\./,"0.");
      sValue=sValue.replace(/\.$/,".0");
      sValue=sPrefix+sValue;  var sMax=oDataSrc.getAttribute("max");
      if (sMax!=null) {
        if (parseFloat(sValue)>parseFloat(sMax)) return msgRange;
      }
      var sMin=oDataSrc.getAttribute("min");
      if (sMin!=null) {
        if (parseFloat(sValue)<parseFloat(sMin)) return msgRange;
      }
      oDataSrc.value=sValue;
      return msgSuccess;
    }//write by Rain1977
      

  10.   

    回复人: BrentIvan(Ivan) (  ) 信誉:100  2002-03-26 16:13:00  得分:0 
      <script language="JavaScript">
    function checkInput() {
       var s;
       s = document.formname.inputname.value;
       for (i = 0; i <= s.length - 1; i++) {
          if (!isNaN(parseInt(s.substring(i, 1)))) {
             alert("input error")!
             return false;
          }
       }
       return true;
    }<form name="formname" onsubmit="return checkInput()">
    <input type="text" name="inputname">
    </form>
    </script> 
     
    这个好像不行啊,我试过了
      

  11.   

    /*****************************************************************
    *校验是否只是数字
    *****************************************************************/
    function isNum(s)
    {
        var patrn=/^[0-9]{6}$/;
        if (!patrn.exec(s)) return false
        return true
    }
    其中{6}是只6位数据,你可以修改该值。