Использование <input type = "url"> для обработки HTTP и HTTPS - PullRequest
1 голос
/ 04 мая 2019

URL-адрес <input type="url"> принимает атрибут pattern, который позволяет нам указать регулярное выражение JavaScript для проверки входного значения.

В этом примере MDN представлен шаблон pattern="https://.*", который ожидает *Протокол 1006 *.Это означает, что значение http не будет принято.

<label for="url">Enter an https:// URL:</label>

<input type="url" name="url" id="url"
       placeholder="https://example.com"
       pattern="https://.*" size="30"
       required>

Не все URL-адреса HTTPS, поэтому этот параметр слишком строг?

В документации, объясняющей атрибут шаблона , говорится:

Если указанный шаблон не указан или недействителен, регулярное выражение не применяется, и этоАтрибут полностью игнорируется.

Я думал, что это означает, что если атрибут pattern не включен, то значение www.example.com будет принято.Однако, похоже, что это не так.

Вопрос: Как мы используем ввод URL для гибкой обработки значений http и https?Более того, кажется, что было бы проще, если бы пользователь мог просто ввести www.example.com без указания протокола.

1 Ответ

1 голос
/ 13 июня 2019

Добавьте ? к шаблону: pattern="https?://.*". ? делает s необязательным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...