Javascript - 使用表单字段值来确定要使用的电子邮件地址

Posted

技术标签:

【中文标题】Javascript - 使用表单字段值来确定要使用的电子邮件地址【英文标题】:Javascript - using form field values to determine which email address to use 【发布时间】:2020-12-16 16:32:18 【问题描述】:

这里是 javascript 新手,如果这是非常基础的代码而不是最漂亮的代码,请见谅。

我正在创建一个表单,我想根据某人选择的团队将其发送到不同的电子邮件地址(例如,如果您选择销售,它将生成一封电子邮件给 X 团队,退款将通过电子邮件发送给 Y 团队等)。

到目前为止,我已经到了可以单击按钮生成电子邮件并将表单附加为 PDF 的阶段,但我不知道如何根据字段值使其可变。

当前代码:

var callerName = this.getField("CallerName").value;
var customSubject = this.getField("WhichTeam").value;
//I've used a fake email address for the next line variable, but this is the one I want to change depending on the "WhichTeam" field value
var mailtoUrl = "mailto:Email@email.com?subject=Callback Referral for " + customSubject;
this.submitForm(
 cURL: mailtoUrl,cSubmitAs: "PDF");

希望这是有道理的。感谢任何帮助/建议?

谢谢

【问题讨论】:

【参考方案1】:

您可以尝试使用一个对象来包含团队的电子邮件,因为他们重视。并且还使用模板字符串将值插入到 mailtoUrl。

var emails = 
   refunds: 'refundsTeamEmail',
   sales: 'salesTeamEmail',


var callerName = this.getField("CallerName").value;
var customSubject = this.getField("WhichTeam").value;

// ex. customSubject value is 'refunds'
// emails[customSubject] would be the same as doing emails.refunds
// which return the value of 'refundsTeamEmail'
var mailtoUrl = `mailto:$emails[customSubject]?subject=Callback Referral for ` + customSubject;
this.submitForm(
 cURL: mailtoUrl,cSubmitAs: "PDF");

我认为这是最简单的方法,因为每次运行该函数以发送电子邮件时该值都会发生变化,而无需创建或调用其他函数。

刚刚说了最后一件事,您还可以在另一个函数中使用 switch case 来返回值。如果你想。比如:

function fetchEmail(email) 
   switch(email) 
      case 'refunds':
       return 'refundsTeamEmail'
      case 'sales':
       return 'salesTeamEmail'
      default:
       return ''
   


var callerName = this.getField("CallerName").value;
var customSubject = this.getField("WhichTeam").value;

// ex. customSubject value is 'refunds'
// emails[customSubject] would be the same as doing emails.refunds
// which return the value of 'refundsTeamEmail'
var mailtoUrl = `mailto:$fetchEmail(customSubject)?subject=Callback Referral for ` + customSubject;
this.submitForm(
 cURL: mailtoUrl,cSubmitAs: "PDF");

【讨论】:

谢谢 - 试试看会发生什么。

以上是关于Javascript - 使用表单字段值来确定要使用的电子邮件地址的主要内容,如果未能解决你的问题,请参考以下文章

使用来自 javascript 的返回值自动填充隐藏的表单字段

使用 JavaScript 将 JavaScript 代码添加到 HTML 页面

将变量值分配给模板中的表单域

使用 VBA 从主菜单打开一个表单,其中一个字段为空/空白

将 HTML 表单输入保存到 Javascript 变量 [重复]

通过在 JavaScript 中检索它们的值来自动选择复选框 [重复]