Js驗證只能輸入數字,經過鍵盤值(keyCode)驗證javascript
<input type="text" style="ime-mode:disabled;" onpaste="return false;" onkeypress="keyPress()" />html
function keyPress() { var keyCode = event.keyCode; if ((keyCode >= 48 && keyCode <= 57)){ event.returnValue = true; } else { event.returnValue = false; } }
style:ime-mode:disabled表示不能切換輸入法
onpaste=」return false;」 表示不能粘貼java
1.文本框只能輸入數字代碼(小數點也不能輸入)this
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
2.只能輸入數字,能輸小數點.spa
<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"> <input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能輸入數字');this.value='';}">
3.數字和小數點方法二code
<input type=text t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}">
4.只能輸入字母和漢字htm
<input onkeyup="value=value.replace(/[\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers">
5.只能輸入英文字母和數字,不能輸入中文ip
<input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')">
6.只能輸入數字和英文get
<input onKeyUp="value=value.replace(/[^\d|chun]/g,'')">
7.小數點後只能有最多兩位(數字,中文均可輸入),不能輸入字母和運算符號:input
<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">
8.小數點後只能有最多兩位(數字,字母,中文均可輸入),能夠輸入運算符號:
<input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">
輸入中文:
<input type="text" onkeyup="this.value=this.value.replace(/[^\u4e00-\u9fa5]/g,'')">
輸入數字:
<input type="text" onkeyup="this.value=this.value.replace(/\D/g,'')">
輸入英文:
<input type="text" onkeyup="this.value=this.value.replace(/[^a-zA-Z]/g,'')">
三個合在一塊兒(中文、數字、英文)
<input onkeyup="value=value.replace(/[^\w\u4E00-\u9FA5]/g, '')">
只輸入數字和字母
<input class=input maxLength=12 size=15 name=username id="username" onKeyUp="value=value.replace(/[\W]/g,'')">
除了英文的標點符號覺得 其餘的人均可以中文,英文字母,數字,中文標點
<input type="text" onkeyup="this.value=this.value.replace(/^[^!@#$%^&*()-=+]/g,'')">
input值輸入後自動計算
設置輸入值條件:
onkeyup="value=value.replace(/[^\d\.]/g,'')" onblur="value=value.replace(/[^\d\.]/g,'')"
<ul class="clearfix ulInput"> <li> <em>交通事故責任強制險報價:</em> <span><input type="text" onkeyup="value=value.replace(/[^\d\.]/g,'')" onblur="value=value.replace(/[^\d\.]/g,'');mergervalue(value,'ctal_insurance_price{$ex.id}','{$ex.id}');" value="" name="ctal_insurance_price{$ex.id}" id='ctal_insurance_price{$ex.id}' ></span> </li> <li> <em>車身劃痕險報價:</em> <span><input type="text" onkeyup="value=value.replace(/[^\d\.]/g,'')" onblur="value=value.replace(/[^\d\.]/g,'');mergervalue(value,'bsr_insurance_price{$ex.id}','{$ex.id}');" name="bsr_insurance_price{$ex.id}" id='bsr_insurance_price{$ex.id}' ></span> </li> </ul> <em>總報價:</em><input type="text" placeholder="請輸入保險總報價" bx="{$ex.name}" name="i_quote{$ex.id}" id='i_quote{$ex.id}'>
上面input框限制只能輸入數字或小數,當input失去焦點,會執行 mergervalue(value,name,id);
//mergervalue 合併值 //value 當前input輸入框值 //vname 當前input輸入框標識名稱 //id 分類id(有不少相同的input集合須要合併,能夠用id來區分) function mergervalue(value,vname,id){ var oquota = $('#'+vname).attr('quota');// 原值 var total = $('#i_quote'+id).val();// 總值 if(oquota == undefined || oquota == ''){ oquota = '0'; } if(total == undefined || total == ''){ total = '0'; } if(value == undefined || value == ''){ value = '0'; } oquota = parseFloat(oquota); total = parseFloat(total); value = parseFloat(value); totals = total + oquota + value; $('#i_quote'+id).val(totals);// 記錄總值 $('#'+vname).attr('quota',-value);// 記錄原值的負數 }