我想通过提供基于用户点击的不同HTML页面来更改其UI的单个GAS项目。我无法弄清楚如何从脚本提供不同的HTML,替换当前的浏览器页面并保留状态。任何帮助赞赏。谢谢。从同一个脚本提供不同的HTML页面?
回答
使用google.script.run您可以在html页面上运行服务器上的任何脚本。通过communicating with the server您可以访问PropertiesService,这使您可以在页面之间存储信息。我个人喜欢HTML Service createHtmlOutput(html),因为我可以编辑html而无需编辑单独的页面。
我决定在这里回答你的问题,以便我可以使用代码部分。
问:
我其实希望避免操纵HTML和服务于存储在项目 完全不同的HTML文件。我如何让 页面再次调用脚本,并用新的 内容替换本身?
我们猜测,完全替换页面并不是真正想要的,因为用户会遭遇页面刷新。但是你可以像这样创建的div:
<style>#R01{display:none;}</style>
<div class="replaceable" id="R01"></div>
如果你把你所有更换的内容一样,div的,那么你可以通过这样的电话从服务器请求的内容:
google.script.run
.withSuccessHandler(updateConversation)
.withFailureHandler(showStatus)
.getConversation();
,并把新内容到适当的div中,然后用另一对来更改css,并关闭旧内容和新内容。从而避免页面刷新。不要忘记先将旧数据保存到PropertiesService中。所以我不认为改变整个页面是一条路,但我可能是错的。我认为只要更改一些内部内容就可以避免整个页面刷新的需要。如果你想使用CSS Sprites
改变图像可以避开其他下载我用两个选项:
- 具有带有按钮或文本区域与平变化设置为一个回调到一个功能的主页服务器端并获取新的页面数据,然后用新页面替换当前页面或页面的一部分。
- 在URL中传递参数并让服务器端doGet()解析参数并分支根据这些值加载给定页面。
我已经有效地使用了这两者的组合。基本上我有一个div有我的“菜单”和一个div,这是要更换的部分。我的菜单发生变化,然后将数据发送回服务器以获取动态主体。 HTML返回,然后我replace using innerHTML。
在相同的代码中,我提供了pass menu values via the published URL的功能。这使我可以直接转到一些值,如果我这样选择,因为我有一个Google站点,我们将脚本嵌入到页面中,并且菜单选项可能是特定于该页面的。它允许我们使用iFrame来显示Web应用程序并直接进入相关界面。
- 1. 如何将脚本的不同功能放在同一个html页面中?
- 2. HTML/PHP相同的页面脚本
- 3. 在同一个html页面上使用不同的D3版本
- 4. 如何让一个超链接提供不同的页面?
- 5. 通过从不同的html页面调用,在另一个html页面的div中加载一个html页面
- 6. 将两个不同的文本放在HTML页面的同一个地方
- 7. 在一个html页面中加载不同的页面?
- 8. MS Access - 2个不同页面页脚
- 9. 如何从不同的HTML页面
- 10. ViewPagerIndicator为每个页面提供不同的菜单?
- 11. Rails。针对不同脚本的不同页面
- 12. 如何在同一页面中使用两个不同的jQuery脚本?
- 13. 从html页面提供javascript文件
- 14. mod_rewrite通过php脚本提供html页面
- 15. 一个文本框一个按钮在HTML中的两个不同的页面
- 16. 通过从其他HTML页面提取的DIV生成HTML页面的脚本
- 17. 如何在向同一个html页面添加文本时运行php脚本?
- 18. 如何为不同用户提供具有相同登录页面的不同用户页面?
- 19. 在同一页面中使用两个不同的jQuery版本
- 20. jQuery的从同一个页面.load和不同的ID插入
- 21. jQuery的load()方法从不同的页面图像和脚本
- 22. 春天启动不提供一个HTML页面
- 23. Jsp和Servlets在同一个HTML页面
- 24. 点击从不同的页面影响另一个页面
- 25. 对同一页上的多个html表单重用JavaScript脚本
- 26. 如何向不同的ajax页面提供不同的css文件?
- 27. ASP.NET MVC 4为不同页面上的用户提供不同的权限
- 28. 如何为不同的用户提供不同的登录页面?
- 29. 如何为不同的用户提供不同的登录页面?
- 30. 为不同的ASP.NET MVC 3区域提供不同的登录页面
是的,谢谢。这是关于PropertiesService的一个好主意。实际上,我希望避免操纵HTML并提供存储在项目中的完全不同的HTML文件。 如何让页面再次调用脚本并用新内容替换自己? 谢谢。 – skyser5
我在上面的答案部分添加了对你的问题的答案,因为它可以使用代码段,所以它有点更好。谢谢 – Cooper