享綬洎甴

xiaoning

jquery 文本框只能输入数字 兼容IE、火狐

<script>
 function regInput(obj, reg, inputStr)
 {
  var docSel = document.selection.createRange()
  if (docSel.parentElement().tagName != "INPUT") return false
  oSel = docSel.duplicate()
  oSel.text = ""
  var srcRange = obj.createTextRange()
  oSel.setEndPoint("StartToStart", srcRange)
  var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
  return reg.test(str)
 }
</script>

 

 

<input name="OrderID" type="text" class="input" maxlength="10"

onKeyPress = "return regInput(this, /^[0-9]*$/,  String.fromCharCode(event.keyCode))"
  onpaste  = "return regInput(this, /^[0-9]*$/,  window.clipboardData.getData('Text'))"
  ondrop  = "return regInput(this, /^[0-9]*$/,  event.dataTransfer.getData('Text'))">

 

 

//支持火狐的jquery方法s

 

  $.fn.numeral = function() {  
        $(this).css("ime-mode", "disabled");  
        this.bind("keypress",function(e) {  
        var code = (e.keyCode ? e.keyCode : e.which);  //兼容火狐 IE   
            if(!$.browser.msie&&(e.keyCode==0x8))  //火狐下 不能使用退格键  
            {  
                 return ;  
                }  
                return code >= 48 && code<= 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*/, '');  
            }  
        });  
    };

<body>   

        <input type="text" id="txt1">   

</body>   

    

  $("#txt1").numeral();   

阅读更多
个人分类: js JQuery
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

jquery 文本框只能输入数字 兼容IE、火狐

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭