繁体   English   中英

如何为用户完成登录后将其添加到Google表单

[英]How do I add a login to a Google Form for users completing it

我一直在在线阅读和观看许多教程,但找不到最初可以用单个输入文本加载某种对话框或登录页面的东西,然后可以使用apps脚本进行处理。

填写表单的用户不会触发onFormOpen()。

在我的onSubmitForm()函数上,我有以下代码:

function onFormSubmit(e){
  var formResponses = FormApp.getActiveForm().getResponses();
  var formResponse = formResponses[formResponses.length-1];
  var itemResponses = formResponse.getItemResponses();
  for (var j = 0; j < itemResponses.length; j++) {
    var itemResponse = itemResponses[j];
    Logger.log('Last response to the question "%s" was "%s"',
               itemResponse.getItem().getTitle(),
               itemResponse.getResponse())
  }
}

我有什么办法可以阻止带有某种逻辑条件的表单提交,例如:仅当某些字段匹配某种条件时才执行表单提交?

我有什么办法可以阻止带有某种逻辑条件的表单提交,例如:仅当某些字段匹配某种条件时才执行表单提交?

您可以使用表单规则

您可以创建人们在填写表格时必须遵循的规则。 例如,如果您要求提供电子邮件地址,则可以确保人们只能提交格式正确的电子邮件地址。

关于onFormOpen(),没有以这种方式命名的内置触发器。 您可以将其用作打开的可安装触发器的名称,但它仅在打开表单编辑器时运行,而不在打开表单视图时运行。

关于添加自定义日志记录,如果您使用G Suite帐户,则可以将访问权限限制为与该帐户来自同一域的用户,但不能对此进行进一步限制。

另一种怪异的选择是从表单视图中获取源代码,并“调整”源代码,以使其由Google Apps脚本提供服务或将其托管在您自己的Web服务器上。 这意味着您将注入自定义表单规则/数据验证。 比较简单的方法是使用旧的Google表单并复制/粘贴表单的源代码,但是可以使用UrlFetch。

另一种选择是使用Google Apps脚本中的HtmlService服务创建并提供您的表单,这实际上将使您完全控制表单行为。 请参阅表单-HTML服务:与服务器功能进行通信

有关:

https://webapps.stackexchange.com

暂无
暂无

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

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