Я использую select2. Таким образом, это не поле ввода действительного числа. Я пытаюсь создать поле ввода, которое допускает только цифры с десятичными числами:
<input type="text" name="numeric" class='select2 allownumericwithdecimal'>
$(".allownumericwithdecimal").on("keypress keyup blur",function (event) {
$(this).val($(this).val().replace(/[^0-9\.]/g,''));
if ((event.which != 46 || $(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
});
Теперь мне нужно то, что оно позволяет не только указывать, но также и запятую. ,Это мой подход:
$(".allownumericwithdecimal").on("keypress keyup blur",function (event) {
$(this).val($(this).val().replace(/[^0-9\.]/g,''));
if ((event.which != 46 || $(this).val().indexOf('.') != -1 || $(this).val().indexOf(',') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
Запятая по-прежнему не допускается ..});