CDOSYS CreateMHTMLBody的HTML文件中的Javascript不工作
我想用CreateMHTMLBody发送一封个性化的电子邮件。但是,用作模板的HTML文件中的javascript不会执行并从查询字符串中提取个性化设置 以下是我用作电子邮件模板的简单测试文件:CDOSYS CreateMHTMLBody的HTML文件中的Javascript不工作,javascript,html-email,Javascript,Html Email,我想用CreateMHTMLBody发送一封个性化的电子邮件。但是,用作模板的HTML文件中的javascript不会执行并从查询字符串中提取个性化设置 以下是我用作电子邮件模板的简单测试文件: <html> <head> </head> <body> <h1>Hello <script> Name=location.search.split("="); doc
<html>
<head>
</head>
<body>
<h1>Hello
<script>
Name=location.search.split("=");
document.write(" "+Name[1]);
</script>
</h1>
</body>
</html>
我知道CreateMHTMLBody正在工作,因为我收到了一封写着“你好”的电子邮件,只是没有名字。可能是CreateMHTMLBody忽略了提供的URL中的查询字符串,但是我认为我应该看到javascript试图修改输出的“undefined”
有人知道为什么不执行javascript吗?您没有在脚本中将名称定义为数组(或变量!)。可能,但不可能。因为“var”声明只影响变量的范围。如果没有“var”,则为全局。用“var”表示本地。对于这个小示例脚本,它没有任何区别。string方法.split()返回一个数组。Javascript本质上将“Name”定义为数组。在浏览器中直接调用电子邮件模板时,脚本将按预期工作。当使用CreateMHTMLBody方法嵌入电子邮件正文时,它不起作用。将声明性的“var”添加到“Name”变量中;没有区别。
With myMail
.Subject = "HTML Email Test"
.From = "Support@mydomain.org"
.Bcc = Request.Form("Email")
.CreateMHTMLBody("http://localhost/messages/test.html?Name="+Request.Form("FirstName"))
.Send
End With