У меня есть функция в JS, которая отлично работает с запятыми. Мне нужно, чтобы он работал с точкой (ie. Число с точкой, а не запятая). Как я могу это изменить? Заменить в indexOf(',')
на indexOf('.')
мне не помогло.
$(".isInputNumber").on("keypress keyup blur", function(event) {
var $this = $(this);
if ((event.which != 44 || $this.val().indexOf(',') != -1)
&& ((event.which < 48 || event.which > 57)
&& (event.which != 0 && event.which != 8))) {
event.preventDefault();
}
var text = $(this).val();
if ((event.which == 44) && (text.indexOf(',') == -1)) {
setTimeout(function() {
if ($this.val().substring($this.val().indexOf(',')).length > 3) {
$this.val($this.val().substring(0, $this.val().indexOf(',') + 3));
}
}, 1);
}
if ((text.indexOf(',') != -1)
&& (text.substring(text.indexOf(',')).length > 2)
&& (event.which != 0 && event.which != 8)
&& ($(this)[0].selectionStart >= text.length - 2)) {
event.preventDefault();
}
});