【问题标题】:mailto from script not displaying friendly name来自脚本的邮件不显示友好名称
【发布时间】:2018-04-24 13:25:11
【问题描述】:

我正在从我的脚本中触发一个 mailto 链接以及地址未显示的友好名称:

window.open(`mailto:"${name}"<{contactId=${id}}{userId=${this.userId}}{pitchingInitiativeId=${this.pitchingInitiativeId}}@propelmymail.com>`, '_blank');

输出到:

mailto:%22undefined%22%3C%7BcontactId=1%7D%7BuserId=7%7D%7BpitchingInitiativeId=71%7D@propelmymail.com%3E

【问题讨论】:

  • 能否请您发布此脚本实际呈现的内容?
  • 添加在上面,这是浏览器读取的内容
  • name 似乎是一个未定义的值,尝试在控制台中记录它,看看它是否有值。试试 console.log(name)
  • 是的,我修复了那个部分,但它并没有解决问题。当它在任何邮件客户端中加载时,它仍然显示地址而不是友好名称
  • 试试 this.name 而不是 name,仅此代码很难弄清楚发生了什么,您可能想分享更多代码

标签: javascript


【解决方案1】:

你的输出生成错误,如果应该是

window.open(`mailto:"Friendly Name"<actualemail@propelmymail.com>`, '_blank');

在您的输出中有 URL 编码的字符串,我不确定您使用的是哪个 js 框架,但在纯 javascript 中,您可以连接占位符并使用标准制作字符串,

var name = 'Friendly Name';id = 10; userId = 1125; pitchingInitiativeId = 55;
window.open(`mailto:"${name}"<${id}${userId}${pitchingInitiativeId}@propelmymail.com>`, '_blank');

【讨论】:

猜你喜欢
  • 2010-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-15
  • 1970-01-01
  • 2020-06-26
  • 2019-03-16
相关资源
最近更新 更多