Я использую запятую в качестве десятичного разделителя в моей форме ввода:Укажите максимальную длину после запятой в формах ввода
HTML:
<form id="myform">
<label for="field">Required, decimal number:</label>
<input class="left" id="field" name="field">
<br/>
<input type="submit" value="Validate!">
</form>
Я хочу проверить поле ввода, чтобы использовать только запятую десятичный разделитель И позволяет пользователю вводить только 2 десятичных знака после запятой (это валюта).
JS:
$.validator.addMethod("mynumber", function (value, element) {
return this.optional(element) || /^(\d+|\d+,\d{1,2})$/.test(value);
}, "Por favor, introduza um número válido.");
$("#myform").validate({
debug: true,
rules: {
field: {
required: true,
mynumber: true
}
}
});
Я уже заменить точку запятой, используя Keypress. Но как я могу помешать пользователю вставить более двух десятичных знаков после запятой? JS:
$("#field").keypress(function (evt) {
if (evt.which == 46) {
$(this).val($(this).val() + ',');
evt.preventDefault();
}
});
Вы можете увидеть JSFiddle here
После каждого нажатия клавиши, я хотел бы найти позицию запятой и вырежьте все 2 символов после него ... –