Как установить глобальный флаг RegEx в атрибуте шаблона HTML входного элемента?Html

Программисты Html
Anonymous
Как установить глобальный флаг RegEx в атрибуте шаблона HTML входного элемента?

Сообщение Anonymous »

Я хочу, чтобы клиент проверял ввод формы (имя пользователя + пароль) перед отправкой его на сервер (php).
Поэтому я применил атрибут шаблона во входном теге.
Я придумал выражение RegEx, которое выполняет эту работу на стороне сервера:

Код: Выделить всё

(preg_match_all('/^[a-zA-Z0-9. _äöüßÄÖÜ@-]{1,50}$/', $_POST['username']) == 0)
таким образом, глобальный флаг устанавливается с использованием preg_match_all (вместо preg_match).
Теперь я хотел реализовать тот же RegEx в своем атрибуте шаблона в форме HTML.
Стандарт HTML определяет, что RegEx в атрибуте шаблона следует за RegEx в JavaScript, который разделяет выражение на «шаблон, флаги», разделенные запятой. Я бы перевел это в HTML следующим образом:

Код: Выделить всё

pattern="^[a-zA-Z0-9. _äöüßÄÖÜ@-]{1,50}$,g"
Это не работает.
Все найденные мною валидаторы JavaScript RegEx заключают шаблон в косую черту:

Код: Выделить всё

/^[a-zA-Z0-9. _äöüßÄÖÜ@-]{1,50}$/
и скажем, что глобальный флаг будет за последней косой чертой:

Код: Выделить всё

pattern="/^[a-zA-Z0-9. _äöüßÄÖÜ@-]{1,50}$/g"
Это тоже не работает.
Mozilla также заявляет в своем руководстве для разработчиков (я также читал его в другом месте):

Вокруг текста шаблона не следует указывать косую черту.

Итак, как я могу поместить глобальный флаг в атрибут шаблона входного элемента?>

Подробнее здесь: https://stackoverflow.com/questions/663 ... ut-element

Вернуться в «Html»