gpt4 book ai didi

javascript - 如果我没有填写所有第一封电子邮件(共 3 封),则该操作不会执行

转载 作者:行者123 更新时间:2023-11-29 15:02:13 27 4
gpt4 key购买 nike

我有这个脚本可以通过电子邮件自动发送负载信息:

if(confirm('', 'Are you sure?') == true) {

// enviar mails
var emails = new Array();
if (getFormFieldValue('4469') != '') {
emails[0] = getFormFieldValue('4469');
}
if (getFormFieldValue('4470') != '') {
emails[1] = getFormFieldValue('4470');
}
if (getFormFieldValue('4471') != '') {
emails[2] = getFormFieldValue('4471');
}

var msgBody = 'blablabla' ;

var s = new SendMessage();

if(emails.length > 0) {
s.sendEmailMessage(emails, msgBody);
}


confirmForm();
}

如您所见,有 3 封邮件,如果我不填写第一封,则什么也不会发生,如果我只填写第二封或 thirst 邮件也什么也没有。执行此脚本的唯一方法是填写第一封电子邮件。

我该如何解决这个问题?

谢谢

最佳答案

尝试使用数组索引变量来跟踪您正在填充的电子邮件数组中的条目。您希望始终从索引 0 开始,然后是 1 等,无论填写了哪些电子邮件:

var emails == new Array();
var emailIndex = 0;
if (getFormFieldValue('4469') != '') {
emails[emailIndex ++] = getFormFieldValue('4469');
}
if (getFormFieldValue('4470') != '') {
emails[emailIndex ++] = getFormFieldValue('4470');
}
if (getFormFieldValue('4471') != '') {
emails[emailIndex ++] = getFormFieldValue('4471');
}
// emails should be populated now starting from index 0

如果表单字段值总是从 4469 到 4471 递增,您还可以使用 for 循环简化和缩短代码:

var emails = new Array();
var emailIndex = 0;
for (var fld = 4469; fld <= 4471; fld++)
if (getFormFieldValue(fld.toString()) != '')
emails[emailsIndex++] = getFormFieldValue(fld.toString());

编辑:正如@Naren 所指出的,使用 Array.push 可以使这变得更加简单:

var emails = new Array();
for (var fld = 4469; fld <= 4471; fld++)
if (getFormFieldValue(fld.toString()) != '')
emails.push(getFormFieldValue(fld.toString()));

关于javascript - 如果我没有填写所有第一封电子邮件(共 3 封),则该操作不会执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8185769/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com