我正在填充电子邮件模板,并且按钮onclick事件存在一些问题。
我试图实现的是,当单击按钮时,它应该在新窗口而不是新选项卡中打开URL。
[当前,当电子邮件发送时,它失去了onclick事件功能。关于如何实现此目标的任何建议?
我也尝试过在html模板中创建按钮,而不是像下面的代码那样替换标签,但仍然遇到相同的问题。
HTML代码:
<p>
Hi,
</p>
<p>
A [JobType], to start on [JobStartDate]
<br />
Click here to view the job: [JobUrl]
</p>
<p>
<b>Job Details:</b>
<br />
- Reference: [JobReferenceNumber]
<br />
- Checklist: [AnswerEvaluationName]
<br />
- Created by: [JobCreator]
<br />
</p>
<p>
Kind regards<br />
</p>
<p class="auto-style6">
Please do not reply to this system generated email
</p>
</body>
public void CreateEmailNotificationForNewJob()
{
// Populate the Email Template
string EmailRecipientTestingNotes = "";
string EmailSubject = "";
string EmailTemplate = EmailSender.LoadEmailTemplate("EmailNewJob.html");
string EmailTo = "";
string TestButton = ("<input type=\"button\" onclick=\"window.open('https://www.google.com/','mywin','width=500,height=500');\" >");
EmailSubject = "Job/task ";
EmailTemplate = EmailTemplate.Replace("[JobReferenceNumber]", "Reference");
EmailTemplate = EmailTemplate.Replace("[AnswerEvaluationName]", "Daily Update");
EmailTemplate = EmailTemplate.Replace("[JobStartDate]", "Today");
EmailTemplate = EmailTemplate.Replace("[JobType]", "1");
EmailTemplate = EmailTemplate.Replace("[CompanySiteName]", "");
EmailTemplate = EmailTemplate.Replace("[SiteName]", "");
EmailTemplate = EmailTemplate.Replace("[JobUrl]", TestButton);
EmailTo = "[email protected]";
try
{
// Send email code
}
catch (Exception ex)
{
// Add handling
}
}
[大多数电子邮件客户端不允许像浏览器那样执行JavaScript(通常是出于安全原因)。
但是,如果要创建指向要在电子邮件中显示的URL的链接,则可以只使用超链接而不是按钮。 (如果愿意,您当然可以始终使用CSS使其像按钮一样[[look。)
string TestButton = ("<a href='https://www.google.com/'>Click here</a>");
string TestButton = ("<a href='www.blah.com' target='_blank'>link text</a>");
话虽如此,大多数电子邮件客户端仍然会在新/空白标签中打开。但是,这对于那些使用单击“在浏览器中查看此电子邮件”的用户仍然有用(例如,在Outlook桌面上,这是自动生成的)。
<button class="button" id="myButton" onClick="window.open('http://www.google.com');">
submit
</button>
document.getElementById("myCheck").click();
<button class="button" id="myButton" onClick="window.open('http://www.google.com');">
submit
</button>
document.getElementById("myCheck").click();