<input onkeyup="if(isNaN(this.value)){alert('Error')}">

解决方案 »

  1.   

    这个函数不是只在NUIX上有效吗?
      

  2.   

    <input onblur="if(/[^0-9]/g.test(this.value))alert('你输入的不全是数字')">
      

  3.   

    <input type=text onkeyup="if(/\D/g.test(this.value)){alert('error')}">
      

  4.   

    function IsNumber(snum){
        if (typeof(snum) == "number"){
    snum = snum.toString();
    }
        if  (snum == ""){
    alert("不是数字!")
    return false;
        }
        else{
            s1=/[^0-9.]+/;
            if  (snum.length == 1){
                s2=/[0-9]+/;
            }            
            else{
                s2=/[0-9]+[.]?[0-9]+/;
            }
            s3=/[.]+\w*[.]+/;
            ifpoint1=snum.substring(snum.length-1,snum.length);
            ifpoint2=snum.substring(0,1);
            if  (ifpoint1=="."||ifpoint2=="."){
              alert("错误:不是数字");
            return(false);
            }
            ok1=s1.exec(snum);
            ok2=s2.exec(snum);
            ok3=s3.exec(snum);
            if  ((ok1==null)&&(ok2!=null)&&(ok3==null)){
    alert("是数字")
            return true
    }
            else{
            alert("不是数字!")
            return false;
            
        }
        }
     }
      

  5.   

    或者用这个让他只能输入数字
    <script>
    function numbersonly(field,event){
    var key,keychar;
    if(window.event){
    key = window.event.keyCode;
    }
    else if (event){
    key = event.which;
    }
    else{
    return true
    }
    keychar = String.fromCharCode(key);
    if((key == null)||(key == 0)||(key == 8)||(key == 9)||(key == 13)||(key == 27)){
    return true;
    }
    else if(("0123456789").indexOf(keychar)>-1){
    window.status = "";
    return true;
    }
    else {
    window.status = "Field excepts numbers only";
    return false;
    }
    }
    </script>
    <input type= "text" name= "serialnumber" onkeypress= "return numbersonly(this,event)">