gpt4 book ai didi

javascript - 使用 .numeric 限制小数点前的整数数量

转载 作者:行者123 更新时间:2023-12-01 03:42:00 26 4
gpt4 key购买 nike

我试图将输入限制为小数点前最多两个整数,小数点后最多一个。 (例如 00.0)我一直在尝试使用 .numeric 来完成这项工作,可以在 here 中找到它。 .

我的通话是这样的。

$(".setOneNumDec").numeric({
negative: false,
decimal: ".",
scale: 3,
decimalPlaces: 1
});

目前,一位小数的限制正在发挥作用,但该插件仍然允许小数点前有任意数量的整数。

最佳答案

您正在使用的插件已经过时了。它已经有 2 年历史了(或者从那以后没有进行任何更改),如今任何现代浏览器(甚至 IE > 10)都可以处理输入元素上的 number 类型。那么为什么要使用你不需要的插件。

var element = document.querySelector('input[type="number"]');
element.addEventListener("keyup", function(event){

var currentChar = parseInt(String.fromCharCode(event.keyCode), 10);
// the String.fromCharCode... is a special trick
// which is nicely explained here:
// http://stackoverflow.com/a/25060122/2008111

if(!isNaN(currentChar)) {
var nextValue = this.value + currentChar;

// check if next value is bigger then 100 the reset to 99.9
if(parseInt(nextValue, 10) > 100) {
return this.value = 99.9;
}

// decimal check here. if more then 2 decimal places remove the last one
if((this.value.split('.')[1] || []).length > 1) {
return this.value = this.value.slice(0, -1);
}
}
return false;
});
<input type="number" min="0.1" max="99.9" step="0.1" />

此外,在测试时:看看即使在输入字段内使用箭头时它的工作效果有多好。

关于javascript - 使用 .numeric 限制小数点前的整数数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43810150/

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