我正在研究一个门户网站,其中包含一组可从主屏幕访问的窗体,然后是基于用户对所述窗体提交报表的页面。设置一段时间后自动刷新Google Apps脚本
表单写入单个Google电子表格,其中数据被操纵并且“状态”被抛出。
我已将此状态和其他数据放到我的报告屏幕上,并且一直保持静态状态,直到用户实际刷新页面为止。
我想让它自动刷新,例如每60秒钟刷新一次,所以任何更改都会反映给用户。
我花了时间研究,并设法得到两个选项,似乎在工作的开始阶段,但我无法解决如何解决我仍然存在的问题。
一个选择是做元刷新。代码为:
<meta http-equiv="refresh" content="60;url=HereIsTheURL"/>
此版本的工作,但只在第一个例子。即页面第一次成功重新加载,但当第二个实例出现时,我所得到的只是一个空白的白色屏幕。
我一直在使用的第二个选择是JS。代码是:
<script type="text/javascript">
setTimeout(function() {
location.reload();
}, 60000);
</script>
但是,这只是简单地返回一个空白的白屏每次。
更多信息:
我在Apps脚本中使用HTMLService。
显示日志/报告的页面有完整的脚本URL +“?page = pagename”
有没有人有任何想法如何更改代码,以便页面每次都能正确刷新?
更新下面的HTML内容:
<div id="content" >
<h1>Change Log:</h1>
<br>
<br>
<div id="users-contain" class="ui-widget">
<table id = "user" style="width:100%" class="ui-widget ui-widget-content">
<thead>
<tr class="ui-widget-header ">
<th>Change Request Date</th>
<th>Change Request</th>
<th>Status</th>
<th>Completed By</th>
<th>Date Completed</th>
</tr>
</thead>
<tbody>
<tr>
</tr>
</tbody>
</table>
</div>
您是否尝试过以下缓存设置并结合location.reload(true)? http://stackoverflow.com/questions/15633374/is-there-any-way-to-use-javascript-to-do-a-ctrl-f5-refresh –
setTimeout在60秒执行一次代码,而使用setInterval将执行每60秒执行一次你的代码 – AshBringer
泰德 - 我刚刚实现了这一点,并将setTimeout更改为setInterval,我的问题仍然存在。我所得到的只是一个空白的白色屏幕 – kjexley