django+js+ajax实现刷新页面的方法
本篇章节讲解django+js+ajax实现刷新页面的方法。分享给大家供大家参考,具体如下: 在服务器开发的时候,为了方便将服务器对外开一个接口来操作,可以使用django制作网页,通过页面来操作服务器。这样可以将服务器的维护工作暴漏在更加友好的界面操作,而非通过SecureCRT去敲指令。而且还能提供给策划运维人员来处理一些常规的事情。 这里将会讲解一个非常小的知识点: ① js如何发起一次请求 js部分 我们先在html中定义一个button,并且将id设置成btnTerminalSvr。定义一个反馈的静态标题ntfText <h2 id="ntfText" >就绪</h2></br> <button type="button" class="btn btn-success" id="btnTerminalSvr">关闭服务器</button> 编写js来响应这个button的事件 <script type="text/javascript"> $('#btnTerminalSvr').on('click',function () { alert('嘿,我听说您点击了按钮...' ); ... }); </script> 完善一次ajax请求的请求调用,以及回调之后的处理: <script type="text/javascript"> $("#btnTerminalSvr").click(function(){ $.ajax({ url: './terminal_svr',type: 'POST',data: {},dataType: 'json',timeout: 10000,success: function(result) { if ( result.result == "post_success" ) { $("#ntfText").html("发起成功"); }else { $("#ntfText").html("重复发起了"); } } }); }); </script> 在这里我们能在data里面填写一些json格式的数据结构,这样就能附带一些消息提供给服务器做调用。当调用成功之后他将会回调function(result)。这种写法是js的异步惯用写法,当服务器做出相应之后也我们能通过jQuery框架直接去修改id=ntfText部分的html字符串了。 django部分 第一步:我们先定义django的url相应的映射 url(r'^terminal_svr',views.terminal_svr,name='terminal_svr'), 第二步:在views.py中实现这个处理函数 from django.views.decorators.csrf import csrf_exempt @csrf_exempt def terminal_svr(request): # 这里利用了django自身的登陆验证系统 if not request.user.is_authenticated(): return HttpResponseRedirect(request.META.get('HTTP_REFERER','/admin/')) doSomething to terminal svr a = {} a["result"] = "post_success" return HttpResponse(json.dumps(a),content_type='application/json') 这块就比较简单了,我们可以读取request中的json传过来的信息,并且当操作成功后通过json串返回一个字串给前段来判断是否操作成功。 更多关于Python相关内容感兴趣的读者可查看本站专题:《Python入门与进阶经典教程》、《Python编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python文件与目录操作技巧汇总》 希望本文所述对大家Python程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |