Как запретить ввод в текстовое поле несколько нулей одновременно, чтобы можно было вводить только числа с плавающей запятой, например, 0,5 и целые числа 0, 10, 100 и т.д. в Jquery?
function setStrictNumberPattern() {
let inp = document.querySelectorAll('.area');
for (let i = 0; i < inp.length; i++) {
let lastVal = "";
inp[i].addEventListener('input', function() {
if (!this.value) return (lastVal = "");
if ((/^\d+\d*[,]?\d*$/).test(this.value)) {
lastVal = this.value;
} else {
this.value = lastVal;
}
});
}
};
^(([1-9]\d*)|0)(.\d+)?$
^(([1-9]\d*)|0) вначале ожидаем не 0 и сколько угодно цифр или только один ноль(.\d+)? а потом может идти точка и хотя бы одна цифраRegEx101
Регулярка будет пропускать числа с завершающим нулем 0.0, 9.780. Если это не нужно, то нужно часть (.\d+)? заменить на (.\d*[1-9])?
Сборка персонального компьютера от Artline: умный выбор для современных пользователей