Rất khó để xác thực Email một cách chính xác chỉ bằng cách sử dụng thuộc tính HTML5 "mẫu". Nếu bạn không sử dụng "mẫu" thì ai đó @ sẽ được xử lý. đó KHÔNG phải là email hợp lệ.
Việc sử dụng pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}"
sẽ yêu cầu định dạngsomeone@email.com
tuy nhiên nếu người gửi có định dạng như someone@email.net.au
(hoặc tương tự) sẽ không được xác thực để khắc phục điều này mà bạn có thể đặtpattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}"
điều này sẽ xác thực ".com.au hoặc .net.au hoặc tương tự.
Tuy nhiên, sử dụng điều này, nó sẽ không cho phép ai đó@email.com xác nhận. Cho đến nay, việc sử dụng HTML5 để xác thực địa chỉ email vẫn chưa hoàn toàn phù hợp với chúng tôi. Để hoàn thành điều này, bạn sẽ sử dụng một cái gì đó như sau:
<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>
hoặc là:
<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>
Tuy nhiên, tôi không biết cách xác thực cả hai hoặc tất cả các phiên bản của địa chỉ email bằng thuộc tính mẫu HTML5.