<input onblur="if(/[^0-9]/g.test(this.value))alert('你输入的不全是数字')">用 isNaN 的话若是小数格式或者前面有正负号的情况无法判断

解决方案 »

  1.   

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

  2.   

    用这个让他只能输入数字不就行了:)
    <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)">