首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用google表格中的数据填充html下拉框(<select>)。

使用google表格中的数据填充html下拉框(<select>)。
EN

Stack Overflow用户
提问于 2019-02-19 00:07:03
回答 2查看 1.7K关注 0票数 0

我已经用谷歌创建了这个网站,托管在我的谷歌硬盘https://sites.google.com/view/cryptocurrencyman/home

现在,在加密货币图表页面上,我想要一个下拉框与所有可用的加密货币从谷歌工作表,这是在加密货币数据页面上,这样访问者可以选择哪个加密货币,他们想要绘制的历史价格。

通过运行以下google应用程序脚本函数,我获得了该google工作表中第1列中所有加密货币的名称。这是我在下拉框中需要的数据。

代码语言:javascript
运行
复制
function Get() 
{
  var sheet = SpreadsheetApp.openById("...........").getSheetByName('Sheet1');
  var lastRow = sheet.getLastRow();
  var myRange = sheet.getRange("A2:A" + lastRow);
  var data = myRange.getValues();
  Logger.log("Data = " + data); 

  return data;
 };

这是一个简单下拉框的html代码。

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html>
    <form>
        Select the value of y: &nbsp;    
          <select id="s1"> 
          <option value="1">1</option>
          <option value="2">2</option>
          <option value="3">3</option>
          <option value="4">4</option>
         </select>
     </form>
 </html>

这就是问题所在。我如何才能创建一个超文本标记语言下拉框与所有可用的加密货币在column1中从特定的谷歌工作表与数据?我不想在上面的html表格中手动输入所有的名字。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-02-19 00:41:15

你确定你想这么做吗?这是最简单的部分。

HTML_Test:

代码语言:javascript
运行
复制
<!DOCTYPE html>
  <html>
    <head>
    <base target="_top">
  </head>
  <body>
    <select id="mySelectList">
    </select>
    <script>
      (function () {
        google.script.run.withSuccessHandler(
          function (selectList) {
            var select = document.getElementById("mySelectList");
            for( var i=0; i<selectList.length; i++ ) {
              var option = document.createElement("option");
              option.text = selectList[i][0];
              select.add(option);
            }
          }
        ).getSelectList();
      }());
    </script>
  </body>
</html>

Codes.gs

代码语言:javascript
运行
复制
function getSelectList() {
  try {
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
    var values = sheet.getRange(1,1,sheet.getLastRow(),1).getValues();
    return values;
  }
  catch(err) {
    Logger.log(err);
  }
}
票数 0
EN

Stack Overflow用户

发布于 2019-02-19 02:29:22

这是我使用的两个google sheet函数,加上上面的HTML代码:

代码语言:javascript
运行
复制
function getSelectList() 
         {
          var sheet = SpreadsheetApp.openById(".....").getSheetByName('Sheet1');
          var lastRow = sheet.getLastRow();
          var myRange = sheet.getRange("A2:A" + lastRow);
          var data = myRange.getValues();
          Logger.log("Data = " + data); 
          return data;
         };


         function doGet() 
         {
         return HtmlService.createHtmlOutputFromFile('HTML_Test');
         }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54751206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档