文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Django+Ajax异步刷新/定时自动刷新实例详解

2024-04-02 19:55

关注

前言

分享一下最近在学习Django过程中,遇到和解决的一些有趣的方法和问题

一、Django是什么?

Django也不用在过多的去介绍了。使用python进行web开发的基本上都在用着框架,反正大家都在用,哈哈哈

二、Ajax异步刷新

1.jQuery语法下的Ajax运用

代码如下(示例):

  $.ajax(
            {
                type:"GET",
                url:"/ajax_loadavg",
                dataType:"json",
                success:function (data) {
                    json_data = data
                    }

当然大家别忘了在页面引入jQuery的源

<script src="{% static 'Privilege/vendor/jquery/jquery.min.js'%}"></script>

通过这种方式,可以实现异步数据更新,做到只刷新部分页面而不需要整个页面进行刷新!!!

2.定时刷新页面的样例

这里面使用chartist响应式图标作为案例,设定每15s中对图表进行一次刷新。

HTML5代码示例如下:

<div id="headline-chart" class="ct-chart"></div>

jQuery代码示例如下:

 setInterval(function () {
  $.ajax(
            {
                type:"GET",
                url:"/ajax_loadavg",
                dataType:"json",
                success:function (data) {
                    json_data = data
                   
			data = {
				labels: [0, 10, 20, 30, 40, 50, 60],
				series: [
                	[1, 2, 3, 4, 0, 0, 0],
					[0, 0, 0, 0, 0, 0, 0],
                	[0, 0, 0, 0, 0, 0, 0],
				]
			};

			options = {
				height: 300,
				showArea: true,
				showLine: false,
				showPoint: false,
				fullWidth: true,
				axisX: {
					showGrid: false,
               	 showLabel: false
				},
				lineSmooth: false,
				};

			new Chartist.Line('#headline-chart', data, options);
		 }
		 },15000)

Django 视图(view)代码如下:

注意:此处只是展示Ajax与Django如何进行交互,Ajax获取的JSON数据并未进行利用!

@csrf_exempt
def ajax_loadavg(request):
    if request.method == 'GET':
        context = {'output_loadavg':output_loadavg}
        return HttpResponse(json.dumps(context))

url配置

path('ajax_loadavg/', views.ajax_loadavg, name='ajax_loadavg'),

3.展示效果

可以替换series部分的数据,进行展示

总结

感兴趣的小伙伴可以参看,也希望有想法的小伙伴,评论区多多发表意见!!!

Chartist图表官网链接

http://gionkunz.github.io/chartist-js/

到此这篇关于Django+Ajax异步刷新/定时自动刷新的文章就介绍到这了,更多相关Django Ajax定时自动刷新内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯