Очень сложно правильно проверить электронную почту, просто используя атрибут HTML5 "шаблон". Если вы не используете "шаблон", кто-то @ будет обработан. который НЕ является действительным адресом электронной почты.
Использование pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}"
потребует, чтобы формат был, someone@email.com
однако, если отправитель имеет формат, подобный someone@email.net.au
(или подобный), не будет проверен, чтобы исправить это, вы можете поставитьpattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}"
указать, что это будет проверять ".com.au или .net.au или подобное.
Однако, используя это, он не разрешит проверку кого-то@email.com. Так что простое использование HTML5 для проверки адресов электронной почты еще не полностью с нами. Чтобы завершить это, вы должны использовать что-то вроде этого:
<form>
<input id="email" type="text" name="email" pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" required placeholder="Enter you Email">
<br>
<input type="submit" value="Submit The Form">
</form>
или:
<form>
<input id="email" type="text" name="email" pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" required placeholder="Enter you Email">
<br>
<input type="submit" value="Submit The Form">
</form>
Однако я не знаю, как проверить обе или все версии адресов электронной почты с помощью атрибута шаблона HTML5.