繁体   English   中英

如何显示警报窗口或提示未注册用户

[英]How to display alert windows or prompt to unregistered users

我正在建立一个电子表格,该电子表格的用户不一定具有Google帐户,也不必登录。

我希望通过Browser类可以通过两种方式与用户进行交互。 一种是在弹出窗口中显示警报,以警告用户不要编辑字段。 这与做Browser.msgBoxui.alert 第二件事是在窗口中请求输入,这可以通过Browser.inputBox()很好地完成。

当我以所有者身份登录时,我的代码可以正常工作,但是当由未注册用户编辑时,它毫无用处。

我可以让未注册用户使用这些功能吗?

否则,是否有变通办法来实现类似的功能?

这是我所做的最小示例:

function onEdit(event) {
  var ss = SpreadsheetApp.getActiveSheet();   
  var eventRange = event.range;   
  var eventRow = eventRange.getRow();
  var eventCol = eventRange.getColumn();
  if(eventCol == 1){
    protectDateField(ss, eventRow, eventCol)
    }
  }

  function protectDateField(ss, eventRow, eventCol){
    var ui = SpreadsheetApp.getUi();
    ui.alert("Do Not Edit This Field!");
    ss.getRange(eventRow,eventCol).clearContent(); 
    }

简短答案

您想做的事在Google表格中是不可能的。

说明

  • 要运行绑定到电子表格的脚本,用户应该是该电子表格的编辑器。
  • 简单触发器无法访问需要授权才能运行的服务。
  • 由匿名用户触发触发器时,还会应用一些其他限制。

笔记:

  1. 每种方法所需的授权范围包括在每种方法的文档部分中。
  2. 匿名用户无法授权脚本由可安装的触发器运行,因为授权过程需要使用usar帐户来记录相应的授权。

有关更多详细信息,请参见:

解决方法

仅使用Google表格无法实现所需的功能,但是您可以

  • 使用Apps脚本创建一个Web应用程序并将其嵌入到电子表格中
  • 通过使用另一个平台创建一个Web应用程序并将其嵌入到电子表格中

暂无
暂无

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

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