判断 输入内容必须是数字而且小数位数不超过2位
  我用了一个正则表达式,但是不知道哪里出问题了
   var name=document.forms[0].elements["factory+value"];
if(name.match(/^(0{1}|[1-9]\d*(.\d{0,2})?)$/))

解决方案 »

  1.   


    //最多2位小数的文本框
    function clearNoNum(obj){
    //先把非数字的都替换掉,除了数字和.
    obj.value = obj.value.replace(/[^\d.]/g,"");
    //必须保证第一个为数字而不是.
    obj.value = obj.value.replace(/^\./g,"");
    //保证只有出现一个.而没有多个.
    obj.value = obj.value.replace(/\.{2,}/g,".");
    //保证.只出现一次,而不能出现两次以上
    obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
    //只能有2位小数
    obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')
    }我之前是这样做的
      

  2.   

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

  3.   

    isNaN(param)    的意思就是,判断传入的参数param是否是一个数字, is not a number的意思,如果param是一个数字就返回false,否则返回true