Jquery-number删除十进制后的尾随零

时间:2014-05-23 12:28:07

标签: jquery asp.net masking

在某些jquery上寻找一些帮助

我根据博客使用jquery.number.js,使用github进行屏蔽 http://www.teamdf.com/web/196/jquery-number-format-redux

如果您将文本框屏蔽为4位小数 只要你输入'" 100"出现小数和尾随零 所以.0000会自动出现

有可能阻止这个吗? 或者甚至推迟这种情况发生,直到您离开文本框?

提前致谢

1 个答案:

答案 0 :(得分:2)

通过检查插件,我发现你可以简单地这样做:

$('input').blur(function(){
    this.value = $.number(this.value, 2)
});

http://jsfiddle.net/65VF6/


编辑:限制为4位小数:

在上一段代码中,重写数字时出现了一个错误(逗号错误)。这里修复:

$('#txtbox1').blur(function(){
    this.value = $.number(this.value.replace(/,/g, ''), 4)
});

然后,为了限制小数点,你需要在keyup上有另一个事件。像这样:

$('#txtbox1').blur(function(){
    this.value = $.number(this.value.replace(/,/g, ''), 4)
}).keyup(function() {

    var foo = this.value.replace(/(\..{0,4}).*$/, '$1')

    var carretPos = doGetCaretPosition(this);

    this.value = foo;

    setSelectionRange(this, carretPos, carretPos)
});

此脚本使用您可以在此fiddle中找到的custome功能。