Показать сообщение отдельно
  #1 (permalink)  
Старый 29.06.2021, 15:11
Интересующийся
Отправить личное сообщение для vlad_kl Посмотреть профиль Найти все сообщения от vlad_kl
 
Регистрация: 16.06.2020
Сообщений: 22

RegExp для форматирования input.value
Добрый день.
Есть задача, создать input.value с мгновенным форматированием числа.
Нечто похожее https://www.omnicalculator.com/finance/margin

Юзер вводит 5000 - инпут сразу меняется на 5,000 и так далее.
Это можно решить следующим кодом
input.value = input.value.split(',').join('').replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1,")

Но при input type = number это, увы, не работает.

В таком случае выход следующий - сделать input type = text и добавить запрет на ввод любых символов, кроме цифр 0-9, запятой, минуса и точки.

Прошу вашей помощи с регуляркой, которая будет убирать все "неразрешённые символы". В моём случае, разрешены цифры, запятая, минус и точка. Всё остальное запрещено.

Спасибо
Ответить с цитированием