django+js+ajax實現(xiàn)刷新頁面的方法
本文實例講述了django+js+ajax實現(xiàn)刷新頁面的方法。分享給大家供大家參考,具體如下:
在服務(wù)器開發(fā)的時候,為了方便將服務(wù)器對外開一個接口來操作,可以使用django制作網(wǎng)頁,通過頁面來操作服務(wù)器。這樣可以將服務(wù)器的維護工作暴漏在更加友好的界面操作,而非通過SecureCRT去敲指令。而且還能提供給策劃運維人員來處理一些常規(guī)的事情。
這里將會講解一個非常小的知識點:
① js如何發(fā)起一次請求
② django如何響應(yīng)請求
③ js接收到響應(yīng)如何區(qū)域刷新頁面
js部分
我們先在html中定義一個button,并且將id設(shè)置成btnTerminalSvr。定義一個反饋的靜態(tài)標題ntfText
<h2 id="ntfText" >就緒</h2></br> <button type="button" class="btn btn-success" id="btnTerminalSvr">關(guān)閉服務(wù)器</button>
編寫js來響應(yīng)這個button的事件
<script type="text/javascript">
$('#btnTerminalSvr').on('click', function () {
alert('嘿,我聽說您點擊了按鈕...' );
...
});
</script>
完善一次ajax請求的請求調(diào)用,以及回調(diào)之后的處理:
<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("發(fā)起成功");
}else {
$("#ntfText").html("重復(fù)發(fā)起了");
}
}
});
});
</script>
在這里我們能在data里面填寫一些json格式的數(shù)據(jù)結(jié)構(gòu),這樣就能附帶一些消息提供給服務(wù)器做調(diào)用。當調(diào)用成功之后他將會回調(diào)function(result)。這種寫法是js的異步慣用寫法,當服務(wù)器做出相應(yīng)之后也我們能通過jQuery框架直接去修改id=ntfText部分的html字符串了。
django部分
第一步:我們先定義django的url相應(yīng)的映射
url(r'^terminal_svr', views.terminal_svr,name='terminal_svr'),
第二步:在views.py中實現(xiàn)這個處理函數(shù)
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def terminal_svr(request):
# 這里利用了django自身的登陸驗證系統(tǒng)
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串返回一個字串給前段來判斷是否操作成功。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python入門與進階經(jīng)典教程》、《Python編碼操作技巧總結(jié)》、《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
Python Pandas數(shù)據(jù)中對時間的操作
這篇文章主要介紹了Python Pandas數(shù)據(jù)中對時間的操作,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2019-07-07
教你使用Python實現(xiàn)一個簡易版Web服務(wù)器
這篇文章主要介紹了教你使用Python實現(xiàn)一個簡易版Web服務(wù)器,本篇文章將通過實現(xiàn)一個簡易版的Web服務(wù)器,幫助讀者理解Python網(wǎng)絡(luò)編程的基本概念和技巧,需要的朋友可以參考下2023-04-04
Pycharm使用之設(shè)置代碼字體大小和顏色主題的教程
今天小編就為大家分享一篇Pycharm使用之設(shè)置代碼字體大小和顏色主題的教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python繼承和子類從Person到Student演示實例
這篇文章主要為大家介紹了Python繼承和子類從Person到Student演示實例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-10-10

