onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo'可以满足要求

解决方案 »

  1.   

    小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:
    CODE:
    <input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">
    <input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号
    CODE:
    <input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">
    <input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"> 
      

  2.   

    <input onpaste="return false;" onkeyup="this.value=this.value=(function (a) {return a.length > 1 ? a.shift().replace(/\D/g, '') + '.' + a.join('').replace(/\D/g, '').slice(0, 2) : a[0].replace(/\D/g,'');})(this.value.split('.'))" onBlur="this.value = this.value.replace(/^\D|\D$/, '')">
      

  3.   

    alert(/^[1-9]\d*(\.\d{1,2})?$|^0\.\d{1,2}$|^0$/.test("0.111"));
      

  4.   

    <input   onpaste= "return   false; "   onkeyup= "this.value=this.value.replace(/\\D/g, ' '); "> 
      

  5.   

    我也遇到这个问题,还是不清楚replace(/'/g,"‘");是什么含义?