我为自己的工作场所构建了一个相当有用的工具,使我可以跟踪员工的出勤情况。我最新添加的内容是,当标记了违规行为时,一封带有该违规ID链接的电子邮件就会消失。我希望能够单击该链接,加载html页面并将违规ID传递给该页面。我一直在进行大量搜索,但似乎找不到明确的答案,也找不到与我的案例非常相似的案例。我发现的已接受答案似乎不适用于我的情况。
这是示例:
URL: https://script.google.com/a/macros/mycomp.com/s/blahblahmyID/dev
HREF: https://script.google.com/a/macros/mycomp.com/s/blahblahmyID/dev?cID=1457989239035-cc3050b8
我想将1457989239035-cc3050b8
值传递给我的页面。一旦在页面上得到该信息,我就可以在那里处理它,只是找不到从电子邮件中的HREF链接中提取它的方法。不使用传统网站的缺点之一。
这是我的doGet()
代码,可Index.html
从应用加载:
function doGet(e) {
return HtmlService
.createTemplateFromFile('Index')
.evaluate()
.setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
由于它是非常标准的,因此不确定该代码有多有用。我是否很幸运地尝试执行此操作?
更新:
我意识到我没有提供有关此系统如何工作的足够信息。我正在使用HTML来提供存储在电子表格(Google表格)上的信息。有问题的ID是对电子表格中条目的引用(第1列)。它不是应用程序的一部分,我只是想传递row
我需要从中获取数据的值。如果我有此值,则可以运行脚本以从电子表格中获取所有其他值。
ID是e.parameter对象的属性,您应该使用类似 id=e.parameter.id
您可以按照在问题中显示的方式将其传递,就在网址中的问号之后
HREF:https://script.google.com/a/macros/mycomp.com/s/blahblahmyID/exec?id=1457989239035-cc3050b8
服务器代码将获取该值,将其存储在某个地方,并准备在客户端javaScript要求时将其发送回去。
请参阅下面的Shematic示例:
function doGet(e) {
var id = e.parameter.id
PropertiesService.getScriptProperties().setProperty('id',id);
return HtmlService
.createTemplateFromFile('Index')
.evaluate()
.setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
function returnID(){
return PropertiesService.getScriptProperties().getProperty('id');
}
// in your client javascript, add a call like this (outside of any function so it is executed on page load... or use onload="theFunctionName"...):
google.script.run.withSuccessHandler(getID).returnID();
function getID(id){
console.log(id);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句