1.限制只能輸入正數和小數保留小數點后兩位

1 <input type="number" id="txtNum" /> 2 3 <script type="javascript"> 4 $(function(){ 5 $("#txtNum").keyup(function () { 6 $(this).val(ChangeNumValue($(this).val())); 7 }); 8 9 10 }); 11 12 function ChangeNumValue(tmpVal) 13 { 14 if (tmpVal) { 15 var tmpVal = tmpVal.replace(/[^\d\.]/g, ''); 16 var reg = /^(0|([1-9]\d*))(\.\d{1,2})?$/; //正則驗證保留 最多允許后輸入兩位小數 17 if (!reg.test(tmpVal)) { 18 tmpVal = tmpVal + ""; 19 tmpVal = tmpVal.substring(0, tmpVal.indexOf(".") + 3); 20 var n = (tmpVal.split('.')).length - 1; 21 if (n > 1) { 22 tmpVal = tmpVal.substring(0, tmpVal.indexOf(".")); 23 } 24 } 25 return tmpVal; 26 } else { 27 return ""; 28 } 29 } 30 </script>
2.只能輸入正整數

1 <input type="text" onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'0')}else{this.value=this.value.replace(/\D/g,'')}" />
3.輸入正數和小數(保留兩位)

1 <input type="number" step="0.01" min="0" onkeyup="this.value= this.value.match(/\d+(\.\d{0,2})?/) ? this.value.match(/\d+(\.\d{0,2})?/)[0] : ''">