<input type="text" id="txt1">
<script type="text/javascript">
$("#txt1").numeral();
</script>
项目中要用到文本框只能输入数字,在网上查了很多js控制,发现都存在着多多少少的bug,于是就自己做了一个基于jquery,文本框只能输入数字的插件
$.fn.numeral = function(){ $(this).css("ime-mode","disabled"); this.bind("keypress",function(){ if(event.keyCode == 46){ if(this.value.indexOf(".")!=-1){ return false; } }else{ return event.keyCode>=46&&event.keyCode<=57; } }); this.bind("blur",function(){ if(this.value.lastIndexOf(".")==(this.value.length-1)){ this.value = this.value.substr(0,this.value.length-1); }else if(isNaN(this.value)){ this.value = ""; } }); this.bind("paste",function(){ var s=clipboardData.getData('text'); if(!/\D/.test(s)); value=s.replace(/^0*/,''); return false; }); this.bind("dragenter",function(){ return false; }); this.bind("keyup",function(){ if(/(^0+)/.test(this.value))this.value=this.value.replace(/^0*/, ''); }); };
大家可以用用,,有bug给我留言,,3x