JQuery实现INPUT只能输入数字与小数点

发布时间:2020-12-13编辑:脚本学堂
如何用jquery实现input文本框中只能输入数字与小数点呢?这里分享一例代码,有需要的朋友参考下。

一例只能输入数字和小数点的jquery代码,供大家参考。

例子:
 

复制代码 代码示例:
$(function () {
$.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 || code == 46;
        });
        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 () {
            this.value = this.value.replace(/[^d.]/g, "");
            //必须保证第一个为数字而不是.
            this.value = this.value.replace(/^./g, "");
            //保证只有出现一个.而没有多个.
            this.value = this.value.replace(/.{2,}/g, ".");
            //保证.只出现一次,而不能出现两次以上
            this.value = this.value.replace(".", "$#$").replace(/./g, "").replace("$#$", ".");
        });
    };
    $("#inputTXT").numeral();
}