首页 > 解决方案 > UI5的输入字段中的多封电子邮件

问题描述

我有一个用例,我想在该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因为它为多封电子邮件返回错误。但我想使用它,所以输入控件应该负责验证。有没有更好的方法来处理这些问题?

提前致谢。

标签: javascriptvalidationsapui5email-validation

解决方案


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


推荐阅读