请原谅我对Google Apps的过程缺乏了解。我最近想出了如何向自己/他人发送包含Google表单中包含数据的电子邮件。我拥有的脚本很棒,但是,我遇到了一个问题,即脚本发送的消息的内容是线性格式的。例如,用户输入了两个句子,其中一条线将它们分开,而我所看到的只是一个长线性文本。
如果有人知道如何在用户提交的" AS-IS"表单中接收表单数据,这将有很大帮助。请查看我的代码,看看是否有任何方法可以在Google脚本中实现此类内容。
function sendFormByEmail(e) {
var email = "xxxxx@xxxx.com";
var subject1 = "Approval Required Case # ";
var subject2 = " submitted by: ";
var s = SpreadsheetApp.getActiveSheet();
var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message2 = "";
var message1 = "";
var replyemail = "";
for(var i in headers)
message2 += "<u><b>" + headers[i] + "</b></u> : " + e.namedValues[headers[i]].toString() + "<br><br>" + "nn";
message1 += "<b><font color ='blue'><big> Hi XXXX, </big></font></b>" + "<br><br>" + "Could you please approve the below? " + "<br><br>";
replyemail = e.namedValues['Username'].toString();
Logger.log(message);
subject=subject1 + e.namedValues['Case Number'].toString() + subject2 + e.namedValues['Username'].toString();
var message = message1 + message2;
MailApp.sendEmail(email, subject,message,{name: "Approval Submission: Review",replyTo: replyemail, cc: "" ,'htmlBody':message,});
}
再次预先感谢。
您可以使用JavaScript替换方法使用<br>
message = message.replace("n", "<br>");
MailApp.sendEmail(email, subject,message,{name: "Approval Submission: Review",replyTo: replyemail, cc: "" ,'htmlBody':message});
for:任何感兴趣的人..
我弄清楚了如何实现我最初的问题中所述的所需效果。怎么..?
非常简单的添加:.replace(new RegExp('r?n','g','<br /v>')
我的内容字符串后。
查看下面的代码
message2 += "<u><b>" + headers[i] + "</b></u> : " + e.namedValues[headers[i]].toString().replace(new RegExp('r?n','g'), '<br />')
+ "<br><br>" + "nn";
祝大家好运!