用正则就行了,
验证金额带2位小数点
<script>
function check(str){
if(/^(\d+|[1-9])\.\d{0,2}$/.test(str))
   alert("ok");
else
  alert("no");
}
</script>
<input name="txt">
<input type="button" value="check" onclick="javascript:check(txt.value)">

解决方案 »

  1.   

    <script>
    // num = 小数, n = 点儿后面位数, 默认不限制
    function chkn(num, n){
    if(n){
    return new RegExp('^\\d+(?:\\.\\d{1,'+n+'})?$').test(num);
    }else{
    return new RegExp('^\\d+(?:\\.\\d+)?$').test(num);
    }
    }
    </script>
      

  2.   

    实时就得把结果显示在页面的某个元素里
    比如新建个DIV, input onkeyup 的时候判断下chk返回的值, 然后把状态显示在那个DIV里
      

  3.   

    这个问题的解决方法刚在cloudgamer博客里看到
      

  4.   

    给你个我用过的现成的
    <tr>
              <td width="75">购买数量:</td>
              <td align="left">          <input id="quantityInput" size="5" name="goodsNum" maxlength=4 value="1"
    onkeypress="return event.keyCode>=48&&event.keyCode<=57"
    onpaste="var s=clipboardData.getData('text'); if(!/\D/.test(s)) value=s.replace(/^0*/,''); return false;"
    ondragenter="return false" style="ime-mode:disabled"
    onkeyup="if(/(^0+)/.test(value))value=value.replace(/^0*/, '')" />
                (可购 1 件) </td>
            </tr>
      

  5.   

    <script>
    function check(str){
    if(/^(\d+|[1-9])\.\d{0,2}$/.test(str))
       alert("ok");
    else
      alert("no");
    }
    </script>
    <input name="txt">
    <input type="button" value="check" onclick="javascript:check(txt.value)">
      

  6.   

    onkeyup="value=this.value.replace(/\D+/g,'')"
      

  7.   

    <script>
    function check(str){
    if(/^(\d+|[1-9])\.\d{0,2}$/.test(str))
       alert("ok");
    else
      alert("no");
    }
    </script>
    <input name="txt">
    <input type="button" value="check" onkeyup="javascript:check(txt.value)">
      

  8.   

    function keypress_13(objtxt)//objtxt:text文本對象
         {
            var txtstr=objtxt.value;
            var keyvalue=String.fromCharCode(event.keyCode);//獲取輸入鍵值,用於進行實時驗證
            if(/^\d{0,1}(\.\d{0,3})?$/.test(txtstr+keyvalue)==false)///判斷是否符合要求(正則表達式)
            {
                event.returnValue=false;//
            }
        }正則表達式中的1,3分別表示整數1位和小數3位。
      

  9.   


    function CheckValue(name){
            if (event.srcElement.name == name || event.srcElement.name.indexOf(name)== event.srcElement.name.length-name.length){
            if (String.fromCharCode(event.keyCode).search(/^[0-9-.]$/) == -1) event.returnValue = false;
            }
         }onkeypress事件
      

  10.   

     onkeyup="value=value.replace(/[^\d]/g,'');" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
    直接可用
      

  11.   

    function CheckNum(obj)
    {
        return regInput( obj ,/^[+-]?\d*((\.\d{0,}$)|\d$|$)/, String.fromCharCode(event.keyCode) );
    }function regInput(obj, reg, inputStr)
    {
        var docSel = document.selection.createRange()
        if (docSel.parentElement().tagName.toUpperCase() != "INPUT") return false
        oSel = docSel.duplicate()
        oSel.text = ""
        var srcRange = obj.createTextRange()
        oSel.setEndPoint("StartToStart", srcRange)    var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
        return reg.test(str)
    }给你个函数obj就是textbox的obj,<input onkeypress="return CheckNum(this);"  ....>能实现时时效验。