在Adobe PDF表单验证中验证多个电子邮件

时间:2014-09-29 19:04:30

标签: validation email pdf adobe

我创建了一个包含文本框的表单,我希望最终用户可以结束一个电子邮件地址(如果适用,还有多个电子邮件地址)。

我有一段代码可以很好地用于单个电子邮件:

if (event.value && !eMailValidate(event.value)) {
app.alert("Incorrect Address Format");
    event.rc = false;
}

但是,考虑到这不会超过一封以分号分隔的电子邮件。任何人都可以阐明如何将其演变成“多个电子邮件验证器”吗?

谢谢,伙计。

1 个答案:

答案 0 :(得分:0)

您可以将event.value解析为字符串数组,然后使用eMailValidate函数验证数组中的每个字符串。在这种情况下,您希望在尝试解析之前确保event.value不为null或为空,否则您的代码将中断。这是一个例子(使用你的代码):

// Make sure event.value is not null or empty
if(event.value == null | event.value == ""){ 
    app.alert("Incorrect Address Format");
    event.rc = false;
}

// Split semicolon deliminated values into array
var emailArray = event.value.split(';');

// Get the array length
var len = emailArray.length;

// Loop through and validate
for (i = 0; i < len; i++){
    if(!eMailValidate(emailArray[i].trim())){ // Trim removes leading-trailing spaces
        app.alert("Incorrect Address Format");
        event.rc = false;
    }
}

这是一个jsfiddle,其中包含代码的工作示例。

[注意] - 原始示例中的问题是Split中的's'大写,$ .each循环特定于jQuery,而不是javascript。

希望这有用:)