我对一个运行一小段javascript的按钮进行了动态操作。基本上,它充当mailto链接并将一些页面项添加到电子邮件正文中。它大部分都有用但我注意到如果页面项的值包含&电子邮件在文本中切断了这一点。这就是我目前所拥有的:
var policy_num = $v('P9_POLICY');
var tclose = $v('P9_TDATE');
var taskt = $v('P9_TYPE');
var taskd = $v('P9_DESC');
var audito = $v('P9_TASK_AUDIT_OUTCOME');
var auditc = $v('P9_NOTE');
location.href= "mailto:" +
"?subject=" + "Please take immediate action" +
"&body="+
"%0APolicy: " + policy_num +
"%0ATask Closed: " + tclose +
"%0ATask Type: " + taskt +
"%0ATask Description: " + taskd +
"%0AAudit Outcome: " + audito +
"%0AAudit Comment: " + auditc ;
如果有更好的方法来完成这种mailto功能,我肯定会对此持开放态度。这只是我发现实际工作的第一种方式。谢谢!
答案 0 :(得分:0)
如果您的商品包含&字符,它将充当控制字符。您需要对其进行转义,以便不再将其解释为控制字符。
它应该看起来像这样:
var policy_num = escape($v('P9_POLICY'));
var tclose = escape($v('P9_TDATE'));
var taskt = escape($v('P9_TYPE'));
var taskd = escape($v('P9_DESC'));
var audito = escape($v('P9_TASK_AUDIT_OUTCOME'));
var auditc = escape($v('P9_NOTE'));
location.href= "mailto:" +
"?subject=" + "Please take immediate action" +
"&body="+
"%0APolicy: " + policy_num +
"%0ATask Closed: " + tclose +
"%0ATask Type: " + taskt +
"%0ATask Description: " + taskd +
"%0AAudit Outcome: " + audito +
"%0AAudit Comment: " + auditc ;