如何让 Google 表单检索电子表格数据并将其显示在 Google 网站上?

2024-03-24

期望的结果:能够在 Google 表单(可能但不一定;可以是标准网页中的表单)中输入搜索词,并从 Google Sheet 检索相关数据并显示在 Google Site Web 应用程序中。

我在这个问题中学习了如何从参数化 URL 检索数据并在 Google 站点中显示:如何在 URL 中包含数据以供 Google Apps 脚本网络应用程序读取? https://stackoverflow.com/questions/44519009/how-to-include-data-in-a-url-for-a-google-apps-script-web-app-to-read/44531569#44531569

因此,检索和显示电子表格数据的“技术”已经存在,但是当从在线表单中提取数据时,我不知道从哪里开始而不是 URL。也许在提交时,以某种方式读取表单值,创建参数化 URL 并转到该页面来显示数据?


这个样本怎么样?这是一个非常简单的示例脚本。请根据您的环境进行修改。此示例使用搜索文本检索电子表格上的数据,并显示匹配的行。为了使用该示例,请执行以下操作。

  1. 将以下脚本复制并粘贴到脚本编辑器中。
  2. 输入电子表格 ID 和工作表名称,用于搜索数据。
  3. 部署 Web 应用程序并运行脚本。
  4. 输入搜索文本并按“确定”按钮。

Script :

Google Apps 脚本:code.gs

function doGet() {
  return HtmlService.createTemplateFromFile('index').evaluate();
}

function getData(e) {
  var id = "### Spreadsheet ID ###";
  var sheetname = "### Sheet name ###";
  var data = SpreadsheetApp.openById(id).getSheetByName(sheetname).getDataRange().getValues();
  var ar = [];
  data.forEach(function(f) {
    if (~f.indexOf(e.searchtext)) {
      ar.push(f);
    }
  });
  return ar;
}

HTML:索引.html

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<form>
<input type="text" name="searchtext">
<input type="button" value="ok" onClick="getData(this.parentNode)" />
</form>
<pre id="disp"></pre>

<script>
function dispData(e) {
  $('#disp').text(JSON.stringify(e));
}
function getData(e) {
  google.script.run.withSuccessHandler(dispData).getData(e);
}
</script>

电子表格示例:

Result :

如果我误解了你的问题,我很抱歉。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让 Google 表单检索电子表格数据并将其显示在 Google 网站上? 的相关文章

随机推荐