scripts - mailapp.sendemail cc example
Alternativa o soluciĆ³n para "/ n" en google script (2)
Una solución es usar el método GmailApp.sendEmail en lugar del método MailApp.sendEmail . El sendMail de sendMail
maneja /n
correctamente.
La primera vez formulé una pregunta aquí (he estado buscando antes de publicarla), así que por favor tenga en cuenta los posibles errores que haya cometido.
Para el problema: actualmente estoy trabajando en un sitio web con sitios de Google. Hice algunos formularios allí y estoy agregando un script a esos formularios para que la información ingresada se envíe por correo electrónico una vez que se envíe el formulario y se guarde en la hoja de cálculo, que funciona bien, pero el mensaje del correo electrónico que llega está bastante desordenado.
Todas las expresiones "/ n" en el código simplemente se ignoran. Obtuve la base para el código de www.labnol.org y lo edité un poco.
Para empezar, el código:
function sendFormByEmail(e)
{
//I took the two mail addresses out here, but they are working in the original
var email = "first mail address";
var email2 = "second mail address";
var subject = "New Announce your visit form submitted";
var s = SpreadsheetApp.getActiveSheet();
var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message = "A new ''Announce your visit'' form has been submitted on the website: /n/n" + "/n/n";
for(var i in headers) {
message = message + "/n /n";
message += headers[i] + '' = ''+ e.namedValues[headers[i]].toString() + "/n/n";
}
var senderEmail = e.namedValues[headers[6]].toString();
MailApp.sendEmail(email, senderEmail, subject, message);
MailApp.sendEmail(email2, senderEmail, subject, message);
}
Como puede ver, he estado buscando mucho para colocar el / n en diferentes lugares como alternativa, aunque se ignora sin importar dónde lo coloque.
el bucle original se veía así:
for(var i in headers)
message += headers[i] + '' = ''+ e.namedValues[headers[i]].toString() + "/n/n";
Antes de hacer algunas modificaciones al código funcionó bien. Pero aunque no toqué estas líneas, ni ninguna de las otras partes del código que contribuyen a obtener el mensaje, / n dejó de funcionar. Seguí intentando arreglarlo (como muestra el error / n que se muestra arriba), pero sin éxito.
Así que ahora estoy tratando de encontrar una forma de solucionarlos, o al menos una solución alternativa, y espero que cualquiera de ustedes sepa lo que está pasando con los / ns o cómo hacer que funcionen nuevamente.
Gracias por adelantado.
PD: si necesita más información, simplemente hágamelo saber
Aquí hay una solución alternativa a lo que está haciendo: HtmlTemplate
Algunos ejemplos de código:
function sendEmailWithTemplateExample() {
var t = HtmlService.createTemplateFromFile("body.html");
t.someValue = "some dynamic value";
var emailBody = t.evaluate().getContent();
MailApp.sendEmail("[email protected]", "test email", emailBody);
}
Y aquí está el código de plantilla correspondiente en body.html (Haga clic en "Archivo -> Nuevo -> Archivo Html"):
Body goes here
<?= someValue ?>