在应用程序脚本中从电子表格更新下拉列表

Jared_C

我正在尝试学习Google的HTML Service UI服务,并且正在努力寻找如何从电子表格中的数据更新UI中的下拉列表的方法。我从此Google教程中复制了以下代码,效果很好。但是,如果我想使用和来填充下拉列表和

  • 在下面,它似乎不起作用。

    <p>List of things:</p>
    <ul id="things">
        <li>Loading...</li>
    </ul>
    
    <script
    src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
    </script>
    <script>
    // The code in this function runs when the page is loaded.
    $(function() {
      google.script.run.withSuccessHandler(showThings)
          .getLotsOfThings();
    });
    
    function showThings(things) {
      var list = $('#things');
      list.empty();
      for (var i = 0; i < things.length; i++) {
        list.append('<li>' + things[i] + '</li>');
      }
    }
    </script>
    
  • 瑞安·罗斯(Ryan Roth)

    以下Apps Script项目文件使用电子表格数据填充UI中的下拉选择框。在主Apps脚本项目文件(默认名称为Code.gs)中,包括:

    function doGet(request) {
      return HtmlService.createTemplateFromFile('DropDown')
             .evaluate().setSandboxMode(HtmlService.SandboxMode.NATIVE); 
    }
    
    
    function getMenuListFromSheet() {
      return SpreadsheetApp.openById(*SPREADSHEET_ID*).getSheets()[0]
             .getRange(2,1,4,1).getValues();  
    }
    

    您将需要将* SPREADSHEET_ID *替换为包含要用于填充选择框的数据的电子表格的ID。本示例将第一张纸的A2:A5范围内的数据用作要使用的数据(在getRange()函数中定义)。

    还要注意,此示例使用NATIVE沙箱模式,该模式比默认的EMULATED模式更为宽容。

    此示例还需要在Apps脚本项目中创建一个HTML文件(此处名为“ DropDown.html”):

    <p>List of things:</p>
    <ul id="things">
        <li>Loading...</li>
    </ul>
    
    <select id="menu">
      <option></option>
      <option>Google Chrome</option>
      <option>Firefox</option>
    </select>
    
    
    <script
    src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
    </script>
    <script>
    // The code in this function runs when the page is loaded.
    $(function() {
      google.script.run.withSuccessHandler(showThings)
          .getMenuListFromSheet();
      google.script.run.withSuccessHandler(showMenu)
          .getMenuListFromSheet();
    });
    
    function showThings(things) {
      var list = $('#things');
      list.empty();
      for (var i = 0; i < things.length; i++) {
        list.append('<li>' + things[i] + '</li>');
      }
    }
    
    function showMenu(menuItems) {
      var list = $('#menu');
      list.find('option').remove();  // remove existing contents
    
      for (var i = 0; i < menuItems.length; i++) {
        list.append('<option>' + menuItems[i] + '</option>');
      }
    }
    
    </script>
    

    该HTML文件由一个列表和一个选择框组成,均具有默认内容。加载页面时,两者的内容都将由getMenuListFromSheet()函数提供的内容替换,该函数从电子表格中获取其返回值。

    您可以创建绑定到Spreadsheet容器的这些Apps Script项目文件,然后将它们发布为Web应用程序。

    本文收集自互联网,转载请注明来源。

    如有侵权,请联系[email protected] 删除。

    编辑于
    0

    我来说两句

    0条评论
    登录后参与评论

    相关文章

    来自分类Dev

    使用应用程序脚本在电子表格中未定义的值

    来自分类Dev

    Google 电子表格 - 应用程序脚本 - onOpen 功能不起作用

    来自分类Dev

    从不同的电子表格调用应用程序脚本

    来自分类Dev

    在Java中的电子表格应用程序中存储数据的最佳方法

    来自分类Dev

    您将如何在Elm中构建电子表格应用程序?

    来自分类Dev

    从Android应用程序中读取Google电子表格并列出该数据?

    来自分类Dev

    验证应用程序中的Google电子表格ID

    来自分类Dev

    在网络应用程序Google Apps脚本上呈现部分Google电子表格

    来自分类Dev

    访问Web应用程序宏链接的人可以访问我的脚本或电子表格吗?

    来自分类Dev

    如何使用谷歌应用程序脚本获取谷歌电子表格最后一行的值

    来自分类Dev

    如何使用谷歌应用程序脚本划掉电子表格的一行(而不是删除它!)?

    来自分类Dev

    谷歌电子表格查询到下拉列表

    来自分类Dev

    Google脚本:带有下拉列表电子表格的InputBox(非FORM)

    来自分类Dev

    每次编辑后,光标会使用应用程序脚本自动移动到Google电子表格中的单元格A1

    来自分类Dev

    我如何在谷歌应用程序脚本中使用 javascript 从谷歌电子表格数据库中获取日期值

    来自分类Dev

    想要通过应用程序脚本与两个不同的谷歌电子表格中存在的每个单元格的值进行比较,但出现错误

    来自分类Dev

    如何根据现有电子表格更新Google表单下拉列表?

    来自分类Dev

    从电子表格更新数据 - Apps 脚本

    来自分类Dev

    自动更新 Google 电子表格脚本

    来自分类Dev

    react-native android 应用程序从谷歌电子表格中获取和显示数据

    来自分类Dev

    应用脚本不会总是更新Google电子表格单元格的值

    来自分类Dev

    iOS应用程序可以创建并定期访问Google电子表格吗?

    来自分类Dev

    通过脚本从电子表格中删除空行

    来自分类Dev

    如何使用php在Google驱动器中创建电子表格并安装加载项或将应用脚本附加到电子表格中

    来自分类Dev

    Google电子表格脚本

    来自分类Dev

    在应用脚本中创建事件,但未接收电子表格数据

    来自分类Dev

    附加电子表格中Excel文件列表的Google脚本

    来自分类Dev

    为什么Google Apps脚本不更新电子表格中的工作表数量?

    来自分类Dev

    更改Google电子表格的所有者以使用应用程序脚本发送电子邮件

    Related 相关文章

    1. 1

      使用应用程序脚本在电子表格中未定义的值

    2. 2

      Google 电子表格 - 应用程序脚本 - onOpen 功能不起作用

    3. 3

      从不同的电子表格调用应用程序脚本

    4. 4

      在Java中的电子表格应用程序中存储数据的最佳方法

    5. 5

      您将如何在Elm中构建电子表格应用程序?

    6. 6

      从Android应用程序中读取Google电子表格并列出该数据?

    7. 7

      验证应用程序中的Google电子表格ID

    8. 8

      在网络应用程序Google Apps脚本上呈现部分Google电子表格

    9. 9

      访问Web应用程序宏链接的人可以访问我的脚本或电子表格吗?

    10. 10

      如何使用谷歌应用程序脚本获取谷歌电子表格最后一行的值

    11. 11

      如何使用谷歌应用程序脚本划掉电子表格的一行(而不是删除它!)?

    12. 12

      谷歌电子表格查询到下拉列表

    13. 13

      Google脚本:带有下拉列表电子表格的InputBox(非FORM)

    14. 14

      每次编辑后,光标会使用应用程序脚本自动移动到Google电子表格中的单元格A1

    15. 15

      我如何在谷歌应用程序脚本中使用 javascript 从谷歌电子表格数据库中获取日期值

    16. 16

      想要通过应用程序脚本与两个不同的谷歌电子表格中存在的每个单元格的值进行比较,但出现错误

    17. 17

      如何根据现有电子表格更新Google表单下拉列表?

    18. 18

      从电子表格更新数据 - Apps 脚本

    19. 19

      自动更新 Google 电子表格脚本

    20. 20

      react-native android 应用程序从谷歌电子表格中获取和显示数据

    21. 21

      应用脚本不会总是更新Google电子表格单元格的值

    22. 22

      iOS应用程序可以创建并定期访问Google电子表格吗?

    23. 23

      通过脚本从电子表格中删除空行

    24. 24

      如何使用php在Google驱动器中创建电子表格并安装加载项或将应用脚本附加到电子表格中

    25. 25

      Google电子表格脚本

    26. 26

      在应用脚本中创建事件,但未接收电子表格数据

    27. 27

      附加电子表格中Excel文件列表的Google脚本

    28. 28

      为什么Google Apps脚本不更新电子表格中的工作表数量?

    29. 29

      更改Google电子表格的所有者以使用应用程序脚本发送电子邮件

    热门标签

    归档