JavaScript代码:
1 <script type="text/javascript"> 2 function clearNoNum(event,obj){ 3 //响应鼠标事件,允许左右方向键移动 4 event = window.event||event; 5 if(event.keyCode == 37 | event.keyCode == 39){ 6 return; 7 } 8 //先把非数字的都替换掉,除了数字和. 9 obj.value = obj.value.replace(/[^d.]/g,""); 10 //必须保证第一个为数字而不是. 11 obj.value = obj.value.replace(/^./g,""); 12 //保证只有出现一个.而没有多个. 13 obj.value = obj.value.replace(/.{2,}/g,"."); 14 //保证.只出现一次,而不能出现两次以上 15 obj.value = obj.value.replace(".","$#$").replace(/./g,"").replace("$#$","."); 16 var t = obj.value.charAt(0); 17 //如果第一位是负号,则允许添加 18 if (t == '-') { 19 obj.value = '-' + obj.value; 20 } 21 } 22 function checkNum(obj){ 23 //为了去除最后一个. 24 obj.value = obj.value.replace(/.$/g,""); 25 } 26 </script>
html代码:
1 <div class="col-md-4"> 2 <input type="text" onKeyUp="clearNoNum(event,this)" onBlur="checkNum(this)" value="$!{map.dto.invoiceNumStart}" class="form-control" placeholder="(起始)"> 3 </div>