Как запретить вводить что-либо кроме цифр в форму?
Пересмотрел кучу статей по валидации форм на JS, но нигде не нашел примера кода, который бы полностью блокировал ввод каких-либо символов кроме цифр в форму.
Буду благодарен за пример. |
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <input type="text"> <script> document.querySelector('input').oninput = e => e.target.value = e.target.value.replace(/\D/g, ''); </script> </body> </html> |
<input type="number"> вот самое простое решение |
<input type="text" oninput="this.value = this.value.replace(/\D/g, '')"> Встроенное в инпут |
j0hnik,
лучше с проверкой , чтоб не перезаписывать, если нет \D или это лишнее? |
Рони, в целях производительности?
|
j0hnik,
да , и курсор как-то вернуть на место после замены, может нужно ... но наверно нет смысла, середину числа если неправильно начать вводить курсор скакнёт в конец и что делать с точкой, если потребуется? :) |
Рони, в производительности не выиграем ) а на счет точки, вопрос к автору, если нужна, добавить не проблема
|
Часовой пояс GMT +3, время: 08:43. |