function sendFormByEmail (e)
{
var email = "inputemail@address";
var txt = "";
for (var field in e.namedValues) {
txt += field + ' :: ' + e.namedValues[field].toString() + "\n\n";
}
MailApp.sendEmail(email, "input email subject", txt);
}
我相信以下内容可以工作一次(当填写了有效的电子邮件地址时)。然后,我在上面的下面复制并粘贴了完全相同的脚本,并添加了另一封电子邮件,希望可以将表单详细信息通过电子邮件发送给两个不同的人。然后上面的行不通。试图删除它的第二个副本。这不能解决问题。现在,当我测试运行它时,出现以下错误:TypeError:无法从未定义中读取属性“ namedValues”。(第5行,“电子邮件提交的表单”文件)。我非常困惑,因为我非常确定这是与以前工作相同的脚本。我必须透露,这是十年来我第一次尝试编写任何脚本。我不是程序员-是新手,从未正式学习过编码。任何人都可以解释外行中可能发生的情况吗?对我有条件吗?或在适当的情况下更正脚本?在此先感谢您的时间。
当您尝试从Apps脚本编辑器中运行函数时,发生TypeError:无法从未定义中读取属性“ namedValues”。没有事件(e)参数传递给该函数。
您需要确保为您的函数设置了“在表单上提交”触发器,并且必须在Apps脚本编辑器中执行一次(如果在设置触发器时未提示您),以接受使用从以下位置发送电子邮件您的帐户。
如果您希望将邮件发送给多个人,只需用逗号分隔列表即可;
例如
// broken up for clarity
var email = "inputemail@address";
email += ",";
email += "secondrecipient@address";
// add the email address collected from the form
email += ",";
email += e.namedValues['Username'];
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句