我注意到这是一件令人痛苦的事情。 type="email" 的 HTML5 验证器似乎在 Ionic(视图)中不起作用。我尝试了所有可能的方法,但它不起作用。
我在用:
这是我现在的 HTML:
<input class="testinput" type="email" name="email"
ng-model="userRegistration.email" type="text"
pattern="/^[_a-z0-9]+(\.[_a-z0-9]+)*@[a-z0-9-]*\.([a-z]{2,4})$/"
required>
也尝试过这个type="text"
,但也不起作用。我可以在使用电子邮件地址时验证表单,例如:“布拉布拉布拉”我不使用的地方@
符号,这当然是错误的。
我也尝试过的是:[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,63}$
and ng-pattern
,但我没有收到错误,我可以使用随机文本进行注册,而不会被验证器阻止。
所以我的问题是:我该如何解决这个问题?解决这个问题的最佳方法是什么?
我查过:
- 如何使用 ng-pattern 验证 angularJs 中的电子邮件 ID https://stackoverflow.com/questions/24490668/how-to-validate-email-id-in-angularjs-using-ng-pattern
- 为什么 HTML5 表单验证允许电子邮件不带点? https://stackoverflow.com/questions/20573488/why-does-html5-form-validation-allow-emails-without-a-dot
我自己修好了。所有其他可能的解决方案都不适合我。不过,这个有效:
<input type="email" name="email" ng-model="someModelIamUsing"
pattern="[A-Za-z0-9._%+-]{3,}@[a-zA-Z]{3,}([.]{1}[a-zA-Z]{2,}|[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,})">
也许其他人也可以从中受益,这就是我在这里添加它的原因。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)