Как проверить правильность ввода в поле на веб-странице без перезагрузки веб-страницы?

(я новичок в django и html) Как я могу отсеять спам в определенном поле во время приема ввода от пользователя? Также, как показать сообщение пользователю, что введенное значение не принято, потому что это спам, без перезагрузки веб-страницы.

Field

Например, в поле, показанном на картинке, если пользователь вводит число или что-то вроде test123 или что-то еще, что не является правильным именем, моя веб-страница должна показать пользователю сообщение без загрузки веб-страницы, что введенное значение не является действительным. Я также не против поместить кнопку с надписью validate для проверки значения поля имени. Как я могу достичь этого, используя Django+html+jquery?

Самый простой способ - использовать атрибут pattern:

<input type="text" pattern="[A-zÀ-ž][A-zÀ-ž\s]+">

Браузер автоматически проверит, когда вы отправите форму.

A-z означает: латинские символы.

À-ž обозначает диакритические знаки.

\s обозначает пробел.

Обратите внимание, что вышеприведенный паттерн требует, чтобы имя начиналось с буквы и имело не менее 2 символов, чтобы быть действительным.

В Django вы можете определить поле вашей формы следующим образом:

full_name = forms.CharField(label='Full name', widget=forms.TextInput(attrs={"pattern":"[A-zÀ-ž][A-zÀ-ž\s]+"}))
Вернуться на верх