如何在每一行之后的电子邮件正文中添加换行符

How can I add a line break in an email body after each row

我创建了此脚本以将 sheet 的 none 空行作为电子邮件发送。到目前为止,它已发送电子邮件,但它会将所有找到的行放在电子邮件正文中的单个连续行中。

我试过在脚本的 HTML 部分的不同位置放置换行符 <br/>,但到目前为止没有成功。

 function sendSheetDataViaEmail() {
 var SSID = SpreadsheetApp.openById('1dfgdfgdf').getSheetByName('sheet1');
var lastRow = SSID.getLastRow();
 var cell = SSID.getRange(12, 1,lastRow-3,9).getDisplayValues();
var data2D = cell.filter(function(item) {//filter by user Id and by spliting month and year
       
return item[0] != "" // if not empty
});
  Array.prototype.transpose = function() { var a = this; return Object.keys(a[0]).map(function (c) { 
return a.map(function (r) { return r[c]; }); }); }
  
//transpose the array, because getValues() returns an array of rows
data2D = data2D.transpose();

// data2D.splice(1,1); // removes the second column... count starts at 0

//if now you need an array or rows again, just transpose again
data2D = data2D.transpose();

var L = data2D.length;

var html = "";

html = "<table id='loadListOfFaturasDeHojeTable' class='order-table table dark3Dtable'>   <thead><tr> 
 <th '>F. ID </th><th>Trans ID</th> <th>C. ID</th> <th >C. NOME</th> <th >CODDIGO</th> <th >NU DE 
   SERIE</th>   <th >VALOR</th><th >DATA</th>   </tr>  </thead>  <tbody>";


   for (var i=0;i<L;i++) {
  var thisRow = data2D[i];
  var rowHTML = "";
  rowHTML = "<tr>";
  var rowHTML0 =  '<td  style="color: red;">'+ thisRow[0] + '</td>'
  var rowHTML1 =  '<td >'+ thisRow[1] + '</td>'
  var rowHTML2 =  '<td >'+ thisRow[2] + '</td>'
  var rowHTML3 =  '<td >'+ thisRow[3] + '</td>' 
  var rowHTML4 =  '<td >'+ thisRow[4] + '</td>' 
  var rowHTML5 =  '<td >'+ thisRow[5] + '</td>' 
  var rowHTML6 =  '<td >'+ thisRow[6] + '</td>' 
  var rowHTML7 =  '<td >'+ thisRow[7] + '</td>'
  var rowHTML8 =  '<td ">'+ thisRow[8] + '</td>'

 
     rowHTML = rowHTML0 +rowHTML1+rowHTML3 + rowHTML4 + rowHTML5 + rowHTML6 + rowHTML7  + rowHTML8  + 
  "</tr><br/>";
   html = html  + rowHTML ;
  }

   //   Logger.log('html: ' + html)
  html = html + "</table>";


    var settings = {
    mailTo: SSID.getRange('J3')//email address
        .getValue(),
    subject: SSID.getRange('J4')
        .getValue(),
    body:  html,

   }

 MailApp.sendEmail(settings.mailTo, settings.subject,"" , {
    htmlBody: settings.body,

    });

   }

这样试试:

function sendSheetDataViaEmail() {
  var ss=SpreadsheetApp.openById('ssid');
  var sh=ss.getSheetByName('sheet1');
  var lastRow=sh.getLastRow();
  var vA=sh.getRange(12, 1,sh.getLastRow()-11,9).getDisplayValues().filter(function(item){return item[0]});
  var html="";
  html='<table id="loadListOfFaturasDeHojeTable" class="order-table table dark3Dtable"><tr><th>F.ID </th><th>TransID</th><th>C.ID</th><th>C.NOME</th><th>CODDIGO</th><th>NUDESERIE</th><th>VALOR</th><th>DATA</th></tr>';
  for(var i=0;i<vA.length;i++) {
    html+='<tr><td  style="color:red;">'+ thisRow[0] + '</td><td >'+ thisRow[1] + '</td><td >'+ thisRow[2] + '</td><td >'+ thisRow[3] + '</td>';
    html+='<td >'+ thisRow[4] + '</td><td >'+ thisRow[5] + '</td><td >'+ thisRow[6] + '</td><td >'+ thisRow[7] + '</td>'<td ">'+ thisRow[8] + '</td>';
  }
  MailApp.sendEmail(sh.getRange('J3').getValue(),sh.getRange('J4').getValue() ,"",{htmlBody:html});
}