@Dauletnbk
Верстальщик

Как сделать разряд цифр в input но без пробелов в value?

есть такой рабочий код

<input id="sum" type="text" placeholder="Введите число">
 
<script>
function digits_int(target){
	val = $(target).val().replace(/[^0-9]/g, '');
	val = val.replace(/\B(?=(\d{3})+(?!\d))/g, ' ');
	$(target).val(val);
}
 
$(function($){
	$('body').on('input', '#sum', function(e){
		digits_int(this);
	});
	digits_int('#sum');
});
</script>


но у меня input используется для калькулятора и мне нужно отобразилась цифра 25 000 000 но при бралась в расчет цифра 25000000
  • Вопрос задан
  • 77 просмотров
Решения вопроса 2
Adamos
@Adamos
Разрядка прямо в поле мешает при редактировании и копипасте, например.
Есть вариант скрытого поля, на которое принудительно наводится фокус, или вовсе перехват нажатия клавиш и эмуляция ввода - и простой текстовый блок, в котором при каждом событии изменения ввода (нажатия клавиш, щелчки мыши, копипаста) красиво вписывается то, что в нем сейчас должно быть, и курсор, тоже искусственный, зато любой формы, какой душа пожелает.
Ответ написан
Комментировать
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Вырезайте пробелы там, где нужно работать со значением как с числом. У вас уже даже код этот есть.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы