Django 动态显示时间

从后端获取时间,然后每隔一秒自动动态显示

urls.py:

from django.contrib import admin
from django.urls import path
from . import dynamic_time
from django.conf.urls import url

urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'^dynamic_time/$', dynamic_time.get_time),
]

dynamic_time.py:

from django.http import HttpResponse
from django.shortcuts import render
import datetime

# 接收请求数据
def get_time(request):  
    # 获得当前时间
    now = datetime.datetime.now()
    # 转换为指定的格式:
    otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")
    # render用来加载html文件,{}里面是要传给模板的的变量
    return render(request, "dynamic_time.html", {"year": now.year,"month":now.month,"day":now.day,"hour":now.hour,"min":now.minute,"sec":now.second})

dynamic_time.html:

<!DOCTYPE html>
<html>
<body>
 
<div id ="showTimeZone"></div>
<a><i class="lnr lnr-clock"></i> <span id="navbar_time"> </span></a>
<script type="text/javascript">
    var nowTime = new Date();
    var timeZone = (0 - new Date().getTimezoneOffset() / 60);
    var showTimeZone = "timezone: UTC_" + timeZone;;
    document.getElementById("showTimeZone").innerText = showTimeZone;

    yy={{year}};
    mo={{month}};
    dd={{day}};
    hh={{hour}} + timeZone;
    mm={{min}};
    ss={{sec}};
    
    function fix(num, length) {
    return ('' + num).length < length ? ((new Array(length + 1)).join('0') + num).slice(-length) : '' + num;
    }

    setInterval(function(){      
                document.getElementById("navbar_time").innerText = "time: "+yy+"/"+fix(mo,2)+"/"+fix(dd,2)+"/"+
                "   "+fix(hh,2)+":"+fix(mm,2)+":"+fix(ss,2);
                ss++;
                if(ss == 60){
                    ss=0;
                    mm++;
                    if(mm == 60){
                        mm=0;
                        hh++;
                        if(hh == 24){
                            hh == 0;
                        }
                    }
                }
    },1000);

</script>


</body>
</html>

代码只供学习使用,实际使用会有问题,日期进入下一天不会显示,也会有误差

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值