【问题标题】:How to validate multiple emails in a form?如何验证表单中的多封电子邮件?
【发布时间】:2019-06-08 04:38:47
【问题描述】:

我的表单中有多封电子邮件。单击提交按钮后,我想验证每封电子邮件。

vm.isEmailInvalid = false;

function ValidateEmail(mail) 
{
 if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(mail))
  {
    vm.isEmailInvalid = false;
    return (true)
  }
    //alert("You have entered an invalid email address!")
    vm.isEmailInvalid = true;
    return (false)
}

i.QuestionID 动态增加

<input> type = 'text' id="i.QuestionID" required 
ng-model="i.TextBoxAnswers[0]" />

<input> type = 'text' id="i.QuestionID" required  
ng-model="i.TextBoxAnswers[0]" />

<input> type = 'text' id="i.QuestionID" required 
ng-model="i.TextBoxAnswers[0]" />

如果我只有一封电子邮件,它似乎可以正常工作。

说,

  1. 第一封电子邮件是正确的。
  2. 第二封电子邮件为空(消息应显示电子邮件为必填)
  3. 第三封电子邮件不为空(比如 test@yahoo)

    (消息应显示电子邮件格式无效)

假设我只有一封电子邮件

<input ng-model="vm.senderEmail"
                           type="text"
                           name="senderEmail"
                           ng-style="vm.SetRequired(true)"
                           placeholder="user@email.com"
                           class="form-control" />
                    <div ng-if="vm.isSubmitClick && vm.isEmailInvalid
                         && vm.senderEmail.length == 0"
                         style="color:red;text-align: left;">
                        Confirmation email is required.
                    </div>                    

                    <div ng-if="vm.isSubmitClick && vm.isEmailInvalid && vm.senderEmail.length > 0 "
                        style="color:red;text-align: left;">
                        Your email address is not in valid format
                    </div>

如何解决?

【问题讨论】:

  • 您的 html 代码被剪切并且格式错误。帮我们编辑一下,添加JS代码你怎么调用ValidateEmail函数
  • @pindev,我已经修改了问题,如果您有足够的信息,请告诉我。

标签: javascript


【解决方案1】:

如果你只对 HTML 没问题:

<form name="form">
  <label>Email:
    <input multiple
           name="email"
           pattern=".+@b.c"
           required
           title="Please provide only a @b.c e-mail address"
           type="email">
  </label>
  <input type="submit">
</form>

使用的属性:

  • multiple:允许多个以逗号分隔的电子邮件地址 输入。
  • 模式:输入内容必须按顺序匹配的正则表达式 有效。
  • required:表示输入必须有值 在提交表单之前

参考:https://html.spec.whatwg.org/multipage/input.html#e-mail-state-(type=email)

【讨论】:

  • ,表单有多个字段用于输入电子邮件地址。我必须遍历表单,因为可能有多个输入字段。我根据数据库条件创建输入字段。所以我动态地构建了这个字段。
  • 啊我明白了:)
猜你喜欢
  • 2014-05-28
  • 2018-02-15
  • 2012-04-04
  • 2010-11-08
  • 2021-12-18
  • 1970-01-01
  • 2011-05-27
  • 2013-09-08
  • 1970-01-01
相关资源
最近更新 更多