访问 HTML 服务表单对象

2023-11-30

enter image description here

我正在努力通过https://developers.google.com/apps-script/guides/html/communication尝试提交包含从谷歌工作表加载的信息的表单。在客户端,我有(很大程度上基于文章中的表单示例):

<!DOCTYPE html>
<html>
<head>
    <base target="_top">
    <script>
        // Prevent forms from submitting.
        function preventFormSubmit() {
          var forms = document.querySelectorAll('form');
          for (var i = 0; i < forms.length; i++) {
            forms[i].addEventListener('submit', function(event) {
              event.preventDefault();
            });
          }
        }
        //      window.addEventListener('load', preventFormSubmit);

        function handleFormSubmit(formObject) {
          google.script.run.withSuccessHandler(updateUrl).processForm(formObject);
        }
        //      function updateUrl(url) {
        //        var div = document.getElementById('output');
        //        div.innerHTML = '<a href="' + url + '">Got it!</a>';
        //      }
    </script>
</head>
<body>
    <form id="myForm" onsubmit="handleFormSubmit(this)">
        <div>
            <select id="optionList" name="email">
                <option>Loading...</option>
            </select>
        </div>
        <br>
        <div>
            <textarea name="message" rows="10" cols="30">
            The cat was playing in the garden.
            </textarea> 
        </div>
        <input type="submit" value="Submit" />
    </form>

在服务器端(code.gs)我有:

function processForm(formObject) {

  Logger.log('in here');
  var formBlob = formObject.myFile;
  var driveFile = DriveApp.createFile(formBlob);

return driveFile.getUrl();
}

我可以看到提交正在工作,因为我在日志中看到“在这里”。如何从 processForm 函数中访问表单字段?


这块对我来说没有意义

  var formBlob = formObject.myFile;

您的表单不包含“name”属性设置为“myFile”的输入。单击“提交”后,“formObject”变量将为:

{
 email: "Loading...", //from <select id="optionList" name="email">
 message: "The cat was playing in the garden." //from  <textarea name="message">

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

访问 HTML 服务表单对象 的相关文章

  • React-native:将场景绑定到导航栏

    我正在整理这个提问 回答应用程序 并遇到了这个障碍 我想从导航栏触发场景中的功能 与登录应用程序类似 我在导航栏中有一个用于提交答案的按钮 RightButton route navigator index navState if rout
  • 访问sendBeacon发送的数据

    文档表明sendBeacon通过发送其数据HTTP POST request 但在 PHP 中 POST变量似乎是一个空数组 这是我的 JavaScript 代码 navigator sendBeacon beacon log php My
  • 动态速度计 javascript 或 jquery 插件

    我希望有动态ajax插件在页面上显示速度计 一个想法是我设置一个背景并旋转针 有人知道相关插件吗 这里有一些供您参考 http bernii github com gauge js http bernii github com gauge
  • 网站 YouTube 嵌入视频不断播放

    我正在使用 youtube 提供的 iframe 在我的网站上嵌入视频 我还使用了一个 css 弹出窗口 这是我从这个页面学到的http www pat burt com web development how to do a css po
  • VBA / HTML / jQuery 选择自动完成 - 在列表中选择

    我正在尝试使用 Excel 中的 VBA 在网站的列表中选择一个值 这不是一个 正常列表 该网站使用 jQuery 选择自动完成 如下所示 example http davidwalsh name demo jquery chosen ph
  • 非 DOM 对象上的 jQuery 自定义事件

    我最近阅读了一些代码 其功能如下 bob name Bob Smith rank 7 bob bind nameChanged function bob trigger nameChanged 这似乎有效 但我在 jQuery 文档或源代码
  • 消息“在 jest.setTimeout 指定的 5000 毫秒超时内未调用异步回调”

    我正在使用 Puppeteer 和 Jest 来运行一些前端测试 我的测试如下 describe Profile Tab Exists and Clickable settings user gt test Assert that you
  • 在网页上的文本框中键入内容时删除所有空格

    我如何在用户打字时即时删除输入到文本框中的空格 function var txt myTextbox var func function txt val txt val replace s g txt keyup func blur fun
  • 使用 CryptoJS 更改密钥 [重复]

    这个问题在这里已经有答案了 我正在使用 CryptoJS 来加密和解密文本 在这里 我只是获取消息并显示加密和解密消息 我使用DES算法进行加密和解密 这是我的 HTML 文件
  • 检查 touchend 是否在拖动后出现

    我有一些代码可以更改表的类 在手机上 有时表格对于屏幕来说太宽 用户将拖动 滚动来查看内容 但是 当他们触摸并拖动表格时 每次拖动都会触发 touchend 如何测试触摸端是否是触摸拖动的结果 我尝试跟踪dragstart和dragend
  • jquery window.open 在 ajax 成功中被阻止

    尝试在我的 ajax 成功调用中打开一个新的浏览器窗口 但是 它被阻止为弹出窗口 我做了一些搜索 发现用户事件需要绑定到 window open 才能避免这种情况发生 我还找到了这个解决方案 您可以在 ajax 之前打开一个空白窗口 然后在
  • javascript中按tab键时如何调用函数?

    我有一个这样的功能 function whenEmpty field if field value field style backgroundColor ffcccc alert Please fill the field field f
  • 通过 node-http-proxy 保留基于 cookie 的会话

    我有一个简单的基于 Express 的 Node js Web 服务器 用于开发 JavaScript 应用程序 我将服务器设置为使用 node http proxy 来代理应用程序向在不同域和端口上运行的 Jetty 服务器发出的 API
  • 如何流式传输 OpenAI 的完成 API?

    我想流式传输结果通过 OpenAI 的 API 完成 https beta openai com docs api reference completions 该文档提到使用服务器发送的事件 https developer mozilla
  • 淡出和循环一组 div 的最佳方式

    假设我有以下 div div class a You are funny div div class b You are smart div div class c You are cool div 最好的展示方式是什么div a持续 5
  • 查询为空 Node Js Sequelize

    我正在尝试更新 Node js 应用程序中的数据 我和邮递员测试过 我的开发步骤是 从数据库 MySQL 获取ID为10的数据进行更新 gt gt 未处理的拒绝SequelizeDatabaseError 查询为空 我认识到 我使用了错误的
  • 当用户单击链接时,如何记录 MixPanel 事件?

    当用户单击某种类型的链接时 我试图在 MixPanel 中记录一个事件 我正在使用 JQuery 不引人注意地完成此操作 据我所知 我需要添加一个回调函数 以便在记录事件后将用户带到 URL 这是我正在使用的代码 不幸的是
  • Select2 下拉列表动态添加、删除和刷新项目

    这让我发疯 为什么 Select2 不能在其页面上实现清晰的方法或示例如何在 Select2 上进行简单的 CRUD 操作 我有一个 select2 从 ajax 调用获取数据
  • 单击引导分页链接时调用 jquery 函数

    我想在单击引导分页链接时调用 jquery 函数 假设我想从第1页遍历到第2页 应该调用一个jquery函数 我正在使用以下代码 但它不起作用 ul pagination on click li function alert page ch
  • 单击列表时使用 bootstrap Dropdown 防止下拉菜单消失

    我正在使用使用引导下拉菜单 http twitter github com bootstrap javascript html dropdowns生成下拉菜单 我想防止点击菜单时菜单消失 我已经实现了以下代码 但它不起作用 知道如何修复它吗

随机推荐

  • 如何更改javafx中滑块的填充颜色

    我正在制作一个视频播放器 想要使用时间线滑块 并且我想将滑块从第一张图片更改为第二张图片 我可以只使用CSS代码来做到这一点吗 如果是的话 代码是什么 下面很长的帖子 如果您想要一种简单的方法来实现滑块上的 颜色 我应该提到您可以使用JFo
  • 如何绕过权限被拒绝错误?

    以下示例将点形状文件写入光盘 但是 当脚本尝试将 shapefile 写入 C 时 我收到错误 我可以写入外部硬盘 G 以下是我在 R 中收到的错误 文件错误 out name wb 无法打开连接 另外 警告消息 在文件 out name
  • 有条件地选择多个(相邻)行

    我想返回符合特定条件的行 我可以对单行执行此操作 但我需要对多行组合执行此操作 例如 浅绿色 符合 XYZ 为正且 总计 gt 10 的条件 而 红色 则不然 当我组合相邻的一行或多行时 它确实 gt 深绿色 我可以实现遍历所有行而不返回重
  • 为什么当 Tomcat 加载和读取 beans.xml 时 Spring AOP XML 模式没有正确加载

    我正在尝试使用Spring 基于模式的 AOP 支持在 Eclipse 中 尝试在 Tomcat 中加载配置时出现错误 Eclipse 中没有错误 并且 aop 命名空间的自动完成功能正常工作 但是当我尝试将项目加载到 Eclipse 中时
  • 如何通过互联网连接TFS

    我正在团队环境中开发一个大型应用程序 我们使用 Team Foundation Server 来通过 VS2010 控制源代码 我们使用 LAN 连接 TFS 这在小型办公室中效果很好 但现在我们需要通过 Internet 连接 TFS 实
  • 如何重写 ParsePushBroadcastReceiver 的 onPushReceive() ?

    我正在使用 Parse com 的推送通知服务 根据doc 覆盖 onPushReceive 以触发 静默 后台操作 推动 我找到了onPushOpen 的源代码here 但现在我必须重写 onPushReceive 来自定义声音和振动的行
  • Spark 中 addJar() 方法有什么用?

    在Spark作业中 我不知道如何导入和使用方法共享的jarSparkContext addJar 似乎这种方法能够将 jar 移动到集群中其他节点可以访问的某个位置 但我不知道如何导入它们 这是一个例子 package utils publ
  • 如何使用 Beautiful Soup 查找具有特定文本的标签?

    怎么找text I am looking for在以下 HTML 中 标有换行符 n tr td class pos n Some text n br n strong some value strong n td tr tr td cla
  • Scala:在编译时验证类参数不是instanceOf特征

    在编译时 我想验证类参数不是特定特征 T 的实例 我知道如何在运行时使用require or a case match但想知道如何在编译时完成此操作以防止用户提供某种类型的对象混合 我研究过 scala 宏 反射 但无法完全理解它 trai
  • 用户切换浏览器选项卡时的事件

    我正在寻找一个每当用户从页面切换到另一个选项卡时就会触发的事件 以及当用户再次切换回该选项卡时触发的另一个事件 window onblur and window onfocus 似乎无法正常工作跨所有浏览器 我可以查看代理来合成此事件吗 您
  • 一些字符在 POST 期间编码,而另一些则没有

    TL DR 代码点火器 Security类直接操作您的全局变量 例如 POST它发现file and file 是一种威胁 因此它对其进行 HTML 编码 config php from my apps folder is the culp
  • 从对象中原生提取属性

    I use underscore js从对象中提取属性的库 是否有更原生的 JS 方法来完成相同的任务 var fullObject name Jack age 39 device tablet team Red const name de
  • 将 JPG 图像添加到 folium 弹出窗口

    我尝试将图像添加到 folium 弹出窗口 但失败了 我使用python 2 7版本和folium 0 50版本 实际上 我遵循了其他线程中提到的页面 但它仍然不起作用 http nbviewer jupyter org gist ocef
  • 许多:“require”:升级 ruby​​/rails 后无法加载此类文件 - “gem_name”(LoadError)

    在我将 Rails 从 4 1 升级并将 ruby 从 2 0 升级到 2 1 后 当我尝试启动 Rails 时 遇到了一些负载问题 我的许多宝石都抛出这样的错误 Users nk rvm gems ruby 2 1 3 au rails4
  • 获取导入模块的文件路径

    我正在为我的控制器编写一个类装饰器 看起来像 export function Controller
  • 如何使用 Jackson AnnotationIntrospector 有条件地忽略属性

    我想创建一个注释以使 Jackson 忽略带注释的字段 除非设置了特定的跟踪级别 public class A IgnoreLevel Debug String str1 IgnoreLevel Info String str2 或者 如果
  • 如何替换字符串中所有出现的字符?

    将所有出现的字符替换为另一个字符的有效方法是什么std string std string不包含此类功能 但您可以单独使用replace函数来自algorithm header include
  • 在散景中在线性和对数刻度之间切换

    我怎样才能重新生成这个例子在线性和对数刻度之间切换 背景 我是 Matplotlib 的长期用户 最近是 Bokeh 用户 我开始使用 Bokeh 的主要原因之一是它提供的交互性 其中很大一部分是能够在图中的线性和对数刻度之间切换 这是我日
  • Apache HttpComponents:org.apache.http.client.ClientProtocolException

    所以我在java中使用apache HttpComponents来处理http请求 现在我想重用DefaultHttpClient 根据这个例子应该有什么可能 http wiki apache org HttpComponents Quic
  • 访问 HTML 服务表单对象

    我正在努力通过https developers google com apps script guides html communication尝试提交包含从谷歌工作表加载的信息的表单 在客户端 我有 很大程度上基于文章中的表单示例