try something like this (if :
<style type="text/css">
.Rude {font-size:18;color:red}
</style>
<script language="javascript">
function checkInput()
{
   var s = event.srcElement.value;
   nPos = s.indexOf(".");
   if (isNaN(s) ||( nPos >=0 && s.substring(nPos+1).length >=3))
dvShow.className = "Rude";
   else
dvShow.className = "";
}
</script>
<div id="dvShow">enter a number, at most two digits after decimal point only</div>
<input type="text" onkeyup="checkInput()">

解决方案 »

  1.   

    <input  type="text"  onkeyup="check(this.value)">  
    <script>
    function check(str){
    if(str.match(/-?\d*(\.\d{0,2})?/)[0]!=str)alert('错误')
    }
    </script>
      

  2.   

    用正则表达式检验比较方便,下面是一个例子:
    <script>
    function check(txt)
    {
      filter=/^[0-9]+\.[0-9]{2}$/i;
      if(!filter.test(txt))
    alert("请输入带两位小数的数字");
    }
    </script>
    <form><input type='text' OnChange='check(this.value)'><input type='submit' value='OK'></form>