繁体   English   中英

在 html 文件中显示来自应用程序脚本文件的数组

[英]Show array from apps script file in html file

我在应用程序脚本中收到了一系列电子邮件草稿。 我想在一个选择元素的 html 文件中显示它们,但是当我运行它时它显示为空白。 下面的代码

代码.gs

function doGet(e) {
  return HtmlService.createHtmlOutput("index");
}


function doSomething() {

  var drafts = GmailApp.getDrafts();
  var drafty = [];
  for(var i = 0; i < drafts.length; i++){
    drafty.push(drafts[i].getMessage().getSubject());
  }
  Logger.log(drafty);
  return drafty;

  var select = document.getElementById("select"),
      arr = drafty;

  for(var i = 0; i < arr.length; i++)
  {
       var option = document.createElement("OPTION"),
          txt = document.createTextNode(arr[i]);

        option.setAttribute("value", arr[i]);
        option.appendChild(txt);
        document.getElementById("select").appendChild(option);
  }

索引.html

<!DOCTYPE html>
<html>
  <head>
    <script>
      google.script.run.doSomething();
    </script>
  </head>
  <body>
    <select id="select" class="addon-select addon-form-input"></select>
  </body>

像这样:gs:

function doSomething() {
  var drafts=GmailApp.getDrafts();
  var drafty=[];
  for(var i=0;i<drafts.length;i++){
    drafty.push(drafts[i].getMessage().getSubject());
  }
  Logger.log(drafty);
  return drafty;
}

html:

<!DOCTYPE html>
<html>
  <head>
    <script>
      google.script.run
      .withSuccessHandler(function(A){
        var id='select';
        var select = document.getElementById(id);
        select.options.length = 0; 
        for(var i=0;i<A.length;i++) {
          select.options[i] = new Option(A[i],A[i]);
        }
      })
      .doSomething();
    </script>
  </head>
  <body>
    <select id="select"></select>
  </body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM