在另一个网站的HTML页面中使用Google Script作为Java Script

时间:2012-11-26 21:31:15

标签: javascript google-apps-script

我是使用Google Script的新手,但它似乎是我期待使用的Google Doc,Calendar和Mail软件的迷人界面!

我们的网站有一个网站,我很乐意使用动态Javascript组件来访问Google文档。我希望做的是在Google Script中创建函数,并在我们网站的HTML中调用它们。

所以,我制作了一个包含两个功能的Google Script页面:

function getName(EMT_ID) {
// ...
};

function getStrikes(EMT_ID) {
// ...
};

这些从我们使用的Google电子表格中获取数据。我不会包含细节,因为这些细节在通过Google Script测试环境访问时可以自行运行。

然后我将其发布为“Web App”,以便我可以从其他平台访问这些功能。

现在,在我们的其他网页上,我添加了此代码(已删除完全标题)

<script src="https://script.google.com/macros/s/AKfy[...]65K0/exec"></script>

<script>
function strikes()
{
var EMT_ID = document.getElementById('USC ID').value
document.getElementByID('output').InnerHTML = getName(EMT_ID) + ' has ' + getStrikes(EMT_ID) + '     strikes.'
}
</script>

<input type="text" id="USC ID">
<input type="button" onclick='strikes()' value='Check Strikes'>
<p>Output here:</p><p id="output"></p>

我希望能让我从Google Script页面访问Javascript函数。是这样的吗?如果不是 - 我该怎么办呢。

最好的问候

---编辑

要添加详细信息,网页似乎根本不响应按下按钮。

1 个答案:

答案 0 :(得分:0)

Google Apps脚本功能无法通过外部JavaScript以您尝试过的方式直接调用。当您将脚本作为Web应用程序发布时,您提供了一个可通过HTML访问应用程序的URL。它没有公开你的脚本的功能。

但你确实有一些选择。

  1. 您可以使用HTML Service在Google脚本中创建HTML,而html可以通过模板化HTML间接利用您的应用脚本功能,或者直接使用:

    <script>
      google.script.run.doSomething();
    </script>
    
  2. 您可以使用Content Service让您的Apps脚本提供Feed(RSS,JSON,JSONP)。

  3. 您发布的服务可以使用UI Service编写,可以完全访问您的其他应用程序脚本函数,表单,图表等。

  4. 上述主题也有不同之处 - 此列表并非详尽无遗。