Google 表单复选框问题将选定的响应合并到一列中,并用逗号分隔。我正在尝试发送这些回复的确认电子邮件,但该电子邮件的格式很笨拙:
注册:上午 9:15 - 10:00 教学技术工具和资源(电子实验室笔记本、类技术、分析等),上午 10:10 - 11:00 翻转或混合工具(混合)类(class)(学习眼镜、教学设计、Ted、播客等)
我想用 <br>
替换逗号分隔符但一直没能弄清楚。
我已经尝试过:
register = e.namedValues[headers[4]].split(',');
register = e.namedValues[headers[4]];
workshops = register.replace(",", "<br>");
任何帮助将不胜感激!谢谢!
for (var i in headers) {
....... .......
register = e.namedValues[headers[4]];
}
if (e.namedValues[headers[i]].toString() != "" ) {
textbody = ....... + register + "<br>"
}
最佳答案
应该这样构造:
for (var i in headers) {
....... .......
register = e.namedValues[headers[i]].toString();
if (register != "" ) {
textbody = register.replace(/,/g, "<br>");
}
}
将数组转换为字符串后,您需要执行全局替换。
function replaceCommas() {
var headers = ['First Name', 'Timestamp', 'Last Name', 'workshops'];
var register = {'First Name': ['Jane', 'Jon', 'Jim', 'Josie'], 'Timestamp': ['6/7/2015 20:54:13'], 'Last Name': ['Doe'], 'workshops': ['learning glass', 'instructional design', 'Ted', 'podcast']};
//register = e.namedValues[headers[4]].split(',');
var keyName = headers[3]; //Arrays are Zero indexed, fourth item is index 3
Logger.log('keyName is: ' + keyName);
var stringOfValues = register[keyName].toString();
Logger.log('stringOfValues: ' + stringOfValues);
var workshops = stringOfValues.replace(/,/g, "<br>");
Logger.log('workshops: ' + workshops);
}
将上述函数复制到脚本编辑器中,在第一个 Logger.log()
语句等处设置断点,然后单步执行到每一行。您可以在屏幕底部的调试窗口中看到变量的所有值。
要设置断点,请单击行号,然后会出现一个红点,这就是代码将停止的位置。然后单击错误的图标。代码将运行到断点处。
这里是调试文档的链接:
关于javascript - Apps 脚本 - 用逗号分割谷歌表单复选框答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29105538/