当前位置: 首页 > 面试题库 >

表单验证-电子邮件验证无法在AngularJs中正常工作

闻慎之
2023-03-14
问题内容

我正在使用Angular进行表单验证。

这是我用的-plunker-
edit
我从Angularjs文档中获取了此代码-
绑定到窗体和控件状态使用了type,email但是当我运行它并输入abc@abc它时说它是有效的。我该如何解决

<!doctype html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Example - example-example100-production</title>


  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.8/angular.min.js"></script>
  <script src="script.js"></script>



</head>
<body ng-app="">
    <div ng-controller="Controller">
    <form name="form" class="css-form" novalidate>
      E-mail:
        <input type="email" ng-model="user.email" name="uEmail" required/><br />
      <div ng-show="form.uEmail.$dirty && form.uEmail.$invalid">Invalid:
        <span ng-show="form.uEmail.$error.required">Tell us your email.</span>
        <span ng-show="form.uEmail.$error.email">This is not a valid email.</span>
      </div>
    </form>
  </div>
</body>
</html>

PS:我是AngularJs的初学者

编辑:

同样以下输入也显示有效

  • aaa @ aaa
  • aaa---aaa@gmail.com
  • aaa`aaa @ aaa

预期的有效电子邮件

  • aabc@ddd.com
  • aaa.aaa@fddd.co.in
  • aaa@ddd.co.uk

问题答案:

尝试在电子邮件输入中使用ng-pattern。

<input type="email" name="input" ng-model="text" ng-pattern="/^[_a-z0-9]+(\.[_a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/" required>

它适合您的有效和无效案例。

看一个例子:普拉克



 类似资料:
  • 我所拥有的 我在我的应用程序中使用Firebase认证,用户可以使用电子邮件和密码注册。如果用户没有验证他们的电子邮件,我会禁用一些功能,直到他们验证他们的电子邮件。 我还有一个按钮来显式触发验证邮件,它只是调用,。它工作完美,验证邮件总是发送。 用户收到验证邮件,但当他/她验证邮件并返回应用程序时,始终为false。所以我的应用程序仍然不允许用户使用所有功能,尽管事实上他/她已经验证了他们的电子

  • 我正在提示我的应用程序用户提供电子邮件凭据。 在用户插入电子邮件并通过后,我想验证该帐户。 我正在使用javax。邮政有没有办法验证帐户?只确保凭据确实有效——否则我想显示一个无效用户并传递消息。 也许是某种表演方式: 并在不发送任何内容的情况下检查身份验证异常。

  • 问题内容: 我有一个用于用户的Mongoose模式(UserSchema),我想验证电子邮件是否具有正确的语法。我当前使用的验证如下: 但是,这仅检查字段是否为空,而不检查语法。 是否已经存在一些我可以重用的东西,或者我必须提出自己的方法并在validate函数中调用它? 问题答案: 您可以使用正则表达式。 我过去曾经使用过。

  • 问题内容: 我检查了用户是否通过电子邮件验证。但是,无论我发送并确认了多少电子邮件,验证状态仍为。检查时我做错什么了吗? 问题答案: 我如何实现此功能的方法是添加一个 带有时间间隔的,它将检查用户是否已通过验证,然后在完成验证后终止计时器。 检查您当前用户状态的功能:

  • 如何使用firebase中的验证电子邮件验证使用电子邮件和密码登录的用户?这背后的逻辑是如何工作的,它在代码中会是什么样子? 解决方案/帮助:对于那些仍在寻找答案的人,我找到了这篇文章 堆栈溢出 帖子

  • 我检查了用户是否通过电子邮件进行验证。但是,无论我发送并确认了多少封电子邮件,验证状态仍然是。我在检查时是否做错了什么?