PavelUstyugov
@PavelUstyugov
Самозанятый веб-разработчик

Как сделать чтобы в поле был денежный формат суммы при вводе?

Использую Vuetify. Заказчик сказал, что нужно сделать текстовое поле ввода для сумм так чтобы можно было вводить только цифры, запятую и точку. И чтобы цифры разбивались пробелом на три разряда. Я не могу понять как это сделать.

Если задаю маску, к примеру "### ### ### ###" то получается что можно вводить только числа.
если же сделать ### ### ###.## то обязательно нужно будет сначала ввести лидирующие нули если сумм маленькая. а заранее то мы не знаем какой величины введут сумму. И что делать с точкой? отпадает вариант маски.

Ладно. Можно воспользоваться событием blur и проверить вводимое число. Потом проверить есть ли в нем запятая или точка. если нет, то прибавить в конец точку и два нуля. Но это же костыль. Вдруг он захочет несколько раз ввести точку.
И как сделать тогда чтобы они разбивались по 3 разряда при вводе.
  • Вопрос задан
  • 69 просмотров
Пригласить эксперта
Ответы на вопрос 1
dantothefuture
@dantothefuture
You sleep, she sleeps, they sleep, I... don't.
Это не костыль, оно только так везде и работает :) Всё сводится к форматированию при вводе каждого нового символа + сохранению позиции курсора, чтобы не запутать пользователей.

v-money как раз делает то, что вам нужно.
Ответ написан
Ваш ответ на вопрос

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

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