gpt4 book ai didi

javascript - 使用 jquery 自定义主题、正文等的 Mailto

转载 作者:行者123 更新时间:2023-11-28 00:45:18 25 4
gpt4 key购买 nike

我正在为我的团队创建自定义 HTML 页面。我们使用下拉菜单、文本字段和单选按钮来生成电子邮件的字段。我们都使用 IE 和 Outlook,所以这不是问题。我无法使用“生成电子邮件”按钮来填写消息。我可以弹出电子邮件窗口,但所有字段都是空白的。 subject, to 字段, CC 字段, body 需要根据选项填写在页面上选择。这是我的代码:

<script>
$(function generateEmail() {
var emailTo = $("#teamName").val();
var emailCC = $("#CC").val();
var emailSubject = "Escalation Request - Ticket #: " + $("#ticketNumber").val();
var emailBody = "Issue: " + $("#issue") + "<br>Contact info: " + $("#contactInformation") + "<br>Requested action: " + $(".requestedAction:checked");
window.location.href = "mailto:" + emailTo + "&CC=" + emailCC + "&subject=" + emailSubject + "&body=" + emailBody;
});
</script>

<body>
<h1>Team</h1>
<select id="teamName">
<option value="a@a.com">Team A</option>
<option value="b@b.com">Team B</option>
<option value="c@c.com">Team C</option>
</select><br><br>
<h1>CC</h1>
<input type="text" id="CC"><br><br>
<h1>Issue</h1>
<input type="text" id="issue"><br><br>
<h1>Ticket Number</h1>
<input type="text" id="ticketNumber"><br><br>
<h1>Customer contact info</h1>
<input type="text" id="contactInformation"><br><br>
<h1>Requested action</h1>
<input type="radio" name="requestedAction" class="requestedAction" value="Expedite service" id="reqActExpediteService" checked>Expedite service<br>
<input type="radio" name="requestedAction" class="requestedAction" value="Callback" id="reqActCallback">Callback<br><br>
<input type="submit" value="Generate email" onclick="generateEmail()">
</body>

此外,我还需要用换行符和粗体字母来格式化正文。上面的代码不起作用。我很确定它不会工作,因为小于/大于符号,但我不知道如何放入 HTML 代码。我知道这是可能的,因为我要替换的旧工具能够实现它,我只是不知道如何实现。放轻松,我是 jQuery 和 Javascript 的新手。提前致谢!

最佳答案

您在 mailto url 中缺少 ?,因此未传入查询字符串参数(注意 cc 之前的 ? =):

window.location.href = "mailto:" + emailTo + "?cc=" + emailCC + "&subject=" + emailSubject + "&body=" + emailBody;

要添加换行符,您可以使用 %0A%0A 作为换行符。这将产生不同的段落,如下所示:

&body=first line %0A%0A second line

您的代码中也有一些错误,一些缺少 val() 调用,以获取字段值,以及缺少条件来检查是否设置了字段(以构建包含这些值的查询字符串或不)。

function generateEmail() {
var emailTo = $("#teamName").val();
var emailCC = $("#CC").val();
var emailSubject = "Escalation Request - Ticket #: " + $("#ticketNumber").val();
var emailBody = "Issue: " + $("#issue").val() + "%0A%0AContact info: " + $("#contactInformation").val() + "%0A%0ARequested action: " + $(".requestedAction:checked").val();
location.href = "mailto:" + emailTo + "?" +
(emailCC ? "cc=" + emailCC : "") +
(emailSubject ? "&subject=" + emailSubject : "") +
(emailBody ? "&body=" + emailBody : "");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Team</h1>
<select id="teamName">
<option value="a@a.com">Team A</option>
<option value="b@b.com">Team B</option>
<option value="c@c.com">Team C</option>
</select><br><br>
<h1>CC</h1>
<input type="text" id="CC"><br><br>
<h1>Issue</h1>
<input type="text" id="issue"><br><br>
<h1>Ticket Number</h1>
<input type="text" id="ticketNumber"><br><br>
<h1>Customer contact info</h1>
<input type="text" id="contactInformation"><br><br>
<h1>Requested action</h1>
<input type="radio" name="requestedAction" class="requestedAction" value="Expedite service" id="reqActExpediteService" checked>Expedite service<br>
<input type="radio" name="requestedAction" class="requestedAction" value="Callback" id="reqActCallback">Callback<br><br>
<input type="submit" value="Generate email" onclick="generateEmail()">

希望对您有所帮助。

关于javascript - 使用 jquery 自定义主题、正文等的 Mailto,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50967841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com