Сохранить значения флажков в массиве в скрипте Google Apps - PullRequest
0 голосов
/ 02 мая 2020

У меня есть массив Dynami c:

var PartnerEmailList = [one@email.com, two@email.com, three@email.com];

Следующая функция создает таблицу, которая отображается в окне showModalDialog.

function makeTableHTML() {
  var PartnerEmailList = [one@email.com, two@email.com, three@email.com];
  var result = "<table border=0>";
  result += "<tr><td style=\"text-align:center\"><input type=\"checkbox\" name =" + PartnerEmailList[0] + " value =" + PartnerEmailList[0] + " checked></input></td>";
  result += "<td style=\"vertical-align:text-middle\">" + PartnerEmailList[0] + "</td></tr>";
  for(var i=1; i<PartnerEmailList.length; i++) {
    result += "<tr><td style=\"text-align:center\"><input type=\"checkbox\" unchecked></input></td>";
    result += "<td style=\"vertical-align:text-middle\">" + PartnerEmailList[i] + "</td></tr>";
  }
  result += "</table>";
  result += "<input type=\"submit\" value=\"Submit\" class=\"action\" onclick=\"form_data()\">"
  result += "<input type=\"button\" value=\"Close\" onclick=\"google.script.host.close()\">"

  return result;
}

Пользователь нажимает кнопку в Google Sheets, которая запускает следующий скрипт. Этот сценарий открывает окно ModalDialog, где пользователь может проверить, на какие электронные письма они хотят отправить этот продукт.

function SelectEmails(){
  var ui = SpreadsheetApp.getUi();
  var result = makeTableHTML();
  var bccSend = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('main_gen').getRange(2,2).getValue();
   if(bccSend === ''){
    //Call the HTML file and set the width and height
    var html = HtmlService.createHtmlOutput(result)
      .setWidth(450)
      .setHeight(300);

  //Display the dialog
  var dialog = ui.showModalDialog(html, "Select the intended recipients of this briefing.");
  } 
}

Мне нужно написать функцию, которая просматривает все флажки (им всем присваивается значение в коде html) и сохраняет значения каждого из них, которые проверяются в массиве. Я буду вызывать этот массив в другой функции, чтобы на самом деле отправлять электронную почту.

Может быть, гораздо лучше go об этом, но это то, что я придумал до сих пор. Любая помощь приветствуется! Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...