UI5的输入字段中有多封电子邮件

时间:2019-06-10 04:43:23

标签: javascript validation sapui5 email-validation

我有一个用例,我想在sap.m.Input字段中添加多个电子邮件地址。我可以通过保持输入字段的类型sap.m.InputType.Email来做到这一点吗?

我已经检查过HTML5中的<input>标签具有multiple属性,该属性允许用户输入给定输入类型的多个值。我想要类似的东西。

我也想验证所有电子邮件地址。因此,目前,我是通过用分号将sap.m.Input值中的电子邮件地址拆分并通过sap.m.Input的电子邮件验证器手动验证每个电子邮件地址来实现的。

var oEmails = new sap.m.Input();

onFormSubmit: function(oEmail) {
    var isValidEmails = false;
    var emails = oEmail.getValue().split(";");
    for (var i=0; i<emails.length; i++) {
        var emailValidation = oEmail.getValidator().emailValidation(emails[i]);
        var isInvalidEmail = (emailValidation.valueType === "Error");
        if (isInvalidEmail) {
            showError(oEmail);
            isValidEmails = false;
            break;
        } else {
            isValidEmails = true;
        }
    }
    return isValidEmails;
}

我没有在oEmails中添加输入类型,因为它会为多封电子邮件返回错误。但是我想使用它,因此输入控件应注意验证。有没有更好的方法来解决这些问题?

谢谢。

1 个答案:

答案 0 :(得分:1)

您看过sap.m.MultiInput吗?它为单个条目使用令牌,但从语义上讲,它使您可以输入多个条目,并且可以将类型设置为电子邮件,尽管到目前为止我还没有尝试过。