通过Scriplets

时间:2015-05-28 23:58:07

标签: google-apps-script

我正在尝试使用scriplets在Apps脚本页面中加载嵌入式Google日历,而且运气不错。

这是我的HTML代码,带有'iFrame'部分。此代码中的scriplets只是抓取用户的电子邮件,通过将'@'符号替换为'%'来格式化它,以便它可以用于加载日历,然后生成嵌入的链接并将其发布到页面:< / p>

  <?var self = Session.getActiveUser().getEmail();
  var self = self.replace(/@/gi, "%");
  var url = "https://www.google.com/calendar/embed?src=" + self + "&ctz=Europe/Dublin";
  ?>
  <p><?= url?></p>

  <iframe src="https://www.google.com/calendar/embed?src=<?= url?>&ctz=Europe/Dublin" id="myFrame" style="border: 0" width="800" height="600" frameborder="0" scrolling="no"></iframe>

使用iFrame中的“网址”会成功加载日历,但会出现不需要的“垃圾”文字,因为我在网址中嵌入了一个网址。但是,出于某种原因,这有效:

<iframe src="https://www.google.com/calendar/embed?src=<?= self?>&ctz=Europe/Dublin" id="myFrame" style="border: 0" width="800" height="600" frameborder="0" scrolling="no"></iframe>

<iframe src=<?= url?> id="myFrame" style="border: 0" width="800" height="600" frameborder="0" scrolling="no"></iframe>

我希望其中任何一个能够正常工作,原来的工作就会失败。为什么,我将如何解决它?

1 个答案:

答案 0 :(得分:1)

您不应该使用var self = self.replace(/@/gi, "%40");作为%40 = @使用网址转义码

然后以下内容应该有效(所以请确保url周围有双引号):

<iframe src="<?= url?>" id="myFrame" style="border: 0" width="800" height="600" frameborder="0" scrolling="no"></iframe>