В настоящее время мы работаем только с десятичными значениями, где в текстовое поле пользователь вводит только десятичное значение. Должно приниматься только 10 чисел, например, если пользователь вводит 12345.000000, он должен получить предупреждение Ошибка формата числового поля. Пожалуйста, введите еще раз, используя правильный формат. (6.3)
С моим текущим кодом jquery он будет принимать десятичное значение
$("#txtQty").keyup(function() {
var $this = $(this);
$this.val($this.val().replace(/[^\d.]/g, ''));
});
Это мой HTML-код для текстового поля. Этот HTML-код допускает только 10 символов.
Я устал от того, что пользователь SO сказал ниже, но у меня все равно возникает та же проблема.
$('#txtQty').focusout(function(e) {
if('123456.789'.match(/^[0-9]{6}\.[0-9]{3}$/) !== null){
alert("Number field format error. Please re-enter using the proper format. (6.3)");
}else{
'123456.7890'.match(/^[0-9]{6}\.[0-9]{3}$/) !== null
}
});
перед десятичной запятой он должен принимать (1-6) 6 чисел, после десятичной запятой он должен принимать 3 только нули, если неправильно набран, он должен выдать предупреждение, которое вообще не работает, но не получает этого
Вот ссылка на скрипт для того же самого
123456.000 -- true
12345.000 -- правда
1234.000 -- правда
123.000 -- правда
12.000 -- правда
1.000 -- правда
Заранее спасибо
$('.ipt_Havg').focusout(function (e) {
var regexp = /\d*\.\d{3}/
if (document.getElementById("ipt_Havg").value !== regexp) {
alert("Number field format error. Please re-enter using the proper format. (6.3)");
} else {
alert('nothing wrong here');
}
});
Подробнее здесь: https://stackoverflow.com/questions/337 ... alue-input