报表上展示当前时间,到时分秒

696
4

tangmq 数据达人Lv4

发表于2019-5-8 17:20

楼主
本帖最后由 tangmq 于 2019-11-27 16:43 编辑

看标题,直接想到的是,表头文本设置<#=datetostr(TODAY())^""^NOW()#>easy!
那么问题来了,这个时间,必须计算,才会更新,如何做到每一秒根据时间,一秒一秒的变化?
总不能添加一个自动刷新脚本,每秒都刷新吧,那服务器分分钟亚历山大。

分享一个脚本:在报表,添加一个文本,文本组件编号HHH16,客户端脚本如下:

报表上的时间,就这么滴答滴答滴答~~~动起来了
  1. setInterval(function(){   
  2.         var date = new Date();   
  3.         var year = date.getFullYear();    //获取当前年份   
  4.         var mon = date.getMonth()+1;      //获取当前月份   
  5.         var da = date.getDate();          //获取当前日  
  6.         var h = date.getHours();          //获取小时   
  7.         var m = date.getMinutes();        //获取分钟   
  8.         var s = date.getSeconds();        //获取秒   
  9.         
  10.                 var a = new Array("日", "一", "二", "三", "四", "五", "六");  
  11.                 var week = date.getDay();
  12.         
  13.         var d = document.getElementById("HHH16");
  14.         var d1 = d.getElementsByTagName("div")[0];
  15.         var s1 = d1.getElementsByTagName("span")[0];
  16.         
  17.         d.style.width = "300px";
  18.         d.style.height = "150px";

  19.           s1.innerHTML='当前时间:'+year+'年'+mon+'月'+da+'日'+'   星期'+a[week]+' '+h+':'+m+':'+s;
  20.         },1000);
复制代码

上面代码有个小问题,当初始化计算,十分秒是单数的时候,不是两位数,所以固定格式,时分秒都是2位的话,请参考更新后的脚本
  1. setInterval(function(){   
  2.         var date = new Date();   
  3.         var year = date.getFullYear();    //获取当前年份   
  4.         var mon = date.getMonth()+1;      //获取当前月份   
  5.         var da = date.getDate();          //获取当前日  
  6.         var h = date.getHours();          //获取小时   
  7. if(h<10){  //不足两位自动补位
  8.         h="0"+h;
  9. }
  10.         var m = date.getMinutes();        //获取分钟   
  11. if(m<10){//不足两位自动补位
  12.         m="0"+m;
  13. }
  14.         var s = date.getSeconds();        //获取秒   
  15. if(s<10){//不足两位自动补位
  16.         s="0"+s;
  17. }


  18.                 var a = new Array("日", "一", "二", "三", "四", "五", "六");  
  19.                 var week = date.getDay();

  20.         var d = document.getElementById("HHH4");
  21.         var d1 = d.getElementsByTagName("div")[0];
  22.         var s1 = d1.getElementsByTagName("span")[0];

  23.         d.style.width = "1000px";
  24.         d.style.height = "150px";

  25.           s1.innerHTML=year+'年'+mon+'月'+da+'日'+'      '+'星期'+a[week]+' '+h+':'+m+':'+s;
  26.         },1000);
  27. 复制代码
复制代码


最近看过此主题的会员

godhhl

左岸右转

小亿

1505121235

jen

xxxl

木兮

缱绻

4个回答

只看楼主

韦韬然 数据老手Lv5

发表于2019-5-9 15:41

只看该作者

取消 关注该作者的回复

沙发

试了下,还挺好玩

寻找AWM 小试身手Lv3

发表于2019-5-14 10:11

只看该作者

取消 关注该作者的回复

板凳

本帖最后由 寻找AWM 于 2019-5-14 10:15 编辑

酷屏中可以套用 1、添加一个富文本组件
截图201905141011161484.png
2、当前界面是设计界面,切换到设计左边的代码界面
在这个富文本div下面添加一个
<script type="text/javascript"></script>
将脚本复制粘贴到这个标签里面
截图201905141011386066.png


wangpf 数据达人Lv4

发表于2019-5-15 08:06

只看该作者

取消 关注该作者的回复

地板

我要试一下

xxxl 数据老手Lv5

发表于2020-9-3 14:15

只看该作者

取消 关注该作者的回复

5#

门户做实时刷新展现当前时间到时分秒,需要修改脚本中取值的代码即可完成,参考这个帖子https://bbs.esensoft.com/thread-137098-1-1.html

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

渠道咨询电话:137-0120-6790

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

进群交流、一对一指导

©2020ESENSOFT北京亿信华辰软件有限责任公司版权所有:京ICP备07017321号京公网安备11010802016281号