gpt4 book ai didi

jquery - 如何使用 jQuery 来防止用户输入过多的小数位?

转载 作者:行者123 更新时间:2023-12-01 00:11:13 25 4
gpt4 key购买 nike

我正在尝试编写一个 jQuery 插件来防止用户输入小数点后两位以上的数字。具体来说:

  • 如果输入包含 12 并且用户在末尾键入 3,则应该可以正常工作。
  • 如果输入包含 12.34 并且用户在最后输入 1,则不会发生任何事情
  • 如果输入包含 12.34 并且用户在开头键入 1,则应该可以正常工作。

这是我遇到的问题:

  • 如果我绑定(bind)到keypress,我不知道“建议的新值”是什么; $(this).val() 是用户按键之前的值,我不知道用户在输入字段中的哪个位置输入。
  • 如果我绑定(bind)到 keyup$(this).val() 是新值,但它已经出现在文本输入中。如果小数位数太多我可以删除它,但看起来有点问题。

我该怎么做?

最佳答案

也许这个?

jQuery.fn.limitDecimalPlaces = function(maxPlaces) {
$(this).on('keyup', function(e) {
integer = e.target.value.split('.')[0],
mantissa = e.target.value.split('.')[1];

if (typeof mantissa === 'undefined') {
mantissa = '';
}

if (mantissa.length > maxPlaces) {
e.target.value = integer + '.' + mantissa.substring(0, maxPlaces);
}
});
}

经过测试并在 http://jsfiddle.net/vdZfH/2/ 工作

关于jquery - 如何使用 jQuery 来防止用户输入过多的小数位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11041067/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com