<input type=text onblur=check(this.value)>
<script>
function check(o){
if(isNaN(o)){
alert("不是数字");
return false;
}
if(o.split(".")[1].length>2){
alert("小数点,两位");
return false;
}
if(parseInt(o)<0 || parseInt(o) >=1000){
alert("越界");
return false;
}
return true;
}
</script>

解决方案 »

  1.   

    <script>
    var re = /^(((\d|[1-9]\d|[1-9]\d[1-8])(\.\d+)?)|(999(\.\d{1,2})?))$/;
    alert(re.test("999.991"));
    alert(re.test("3.991"));
    alert(re.test("999.97"));
    alert(re.test("0.991"));
    </script>
      

  2.   

    <script language="JavaScript">
    <!--
    var a = /^[\d]{1,3}((\.[\d]{1,2})|(.{0,0}))$/;
    alert(a.test("111.11"));
    alert(a.test("999.99"));
    alert(a.test("9a9.99"));
    alert(a.test("9999.99"));
    alert(a.test("999.990"));
    //-->
    </script>
      

  3.   

    借鉴
    <script>
    var re = /^(((\d|[1-9]\d|[1-9]\d[1-8])(\.\d+)?)|(999(\.\d{1,2})?))$/;
    alert(re.test("999.991"));
    alert(re.test("3.991"));
    alert(re.test("999.97"));
    alert(re.test("0.991"));
    </script>
      

  4.   

    var re = /^(((\d|[1-9]\d|[1-9]\d[1-8])(\.\d+)?)|(999(\.\d{1,2}0*)?))$/;