日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Django 后臺帶有字典的列表數據與頁面js交互實例

瀏覽:203日期:2024-05-28 13:25:38

1、這里只是簡單介紹一下Django的view如何跟js進行交互,首先,進入用戶明細的時候會進入一個頁面,叫用戶信息表,里面包含了用戶學習的課程和所得到的分數,每門課程對應一個分數,其中課程用下拉框依次顯示,選擇課程時動態顯示課程的分數,django view部分代碼如下:

def user_info(request, userid): if request.method == 'GET': user = User.objects.get(userid=userid) user_info = UserInfo.objects.get(userid=userid) content = {'user': user, 'user_info': user_info} detail_data = {} data = [] for detail in user_info: detail_data[’course’] = detail.course detail_data[’score’] = str(detail.score) data.append(json.dumps(detail_data, ensure_ascii=False)) content[’detail’] = data return render(request, 'user/user_info/user_info.html', content)

其中,需注意的是下面這段代碼,

(1)、定義一個空的字典為detail_data,接著再定義一個空的列表data,循環得到每個用戶信息的詳情,也就是用戶的每個課程對應的每個分數,分別把值添加進字典里面去。

(2)、后面在把字典的值通過json.dumps轉換為json格式,這樣才能給html頁面的js進行交互,而且如果有中文的話,需要在后面加個ensure_ascii=False參數,不然的話js得到的數據不是我們想得到的數據。

(3)、最后,再把轉成json的字典數據添加進列表data中,最后通過content[’detail’]=data把這個列表傳到頁面上,供js調用。

detail_data = {} data = [] for detail in user_info: detail_data[’course’] = detail.course detail_data[’score’] = str(detail.score) data.append(json.dumps(detail_data, ensure_ascii=False)) content[’detail’] = data

2、接下來看下html中如何處理上面傳過的detail數據,其中課程用下拉框依次顯示,選擇課程時動態顯示課程的分數,代碼如下:

<script> function select() { var course =$(’#course option:selected’).val(); var details = {{ detail|safe }} for(var detail in details){ var data = JSON.parse(details[detail]); if(course == data.course){ $(’#score’).html(data.score); } } } </script>

代碼解析一下:

(1)、其中獲取下拉框選擇的課程值,賦給一個變量course,接著把傳過來界面的detail,賦給一個變量details,注意這里必須要用{{ detail|safe }},不然取出來的數據會不是想要的。

(2)、接著,循環上面得到的變量,也就是一個帶有字典的列表,循環就得到每一個帶有課程和課程分數的字典,因為在view底下是把每一個字典轉換為json格式,所以現在必須把循環得到每一個字典通過json解析得到其對應的,通過JSON.parse(details[detail]),否則也是取不到對應的數據。

(3)、通過頁面下拉框選擇的課程值,跟取到的每個課程的分數做比較,相等的話,就取出對應課程的分數,填充進頁面中。

3、Django和js交互的網上例子太少,這里積累一下,以上內容僅供學習參考,謝謝!主要還是自己去嘗試。

補充知識:django 后臺數據直接交給頁面

<html><head> <title>運維平臺</title> <link rel='stylesheet' type='text/css' href='http://www.b3g6.com/static/Css/Monitor/addmqmonitor.css' rel='external nofollow' > <link rel='stylesheet' type='text/css' href='http://www.b3g6.com/static/Css/Public/header.css' rel='external nofollow' rel='external nofollow' > <link rel='stylesheet' type='text/css' href='http://www.b3g6.com/static/Css/Public/menu.css' rel='external nofollow' rel='external nofollow' ></head><body> <include file='Public:header'/> <div class='content'> <include file='Public:menu'/> <div class='con fl'> <form action='/addmqmonitor/' method='post'><label class='condition'>應用</label><input type='text' name='app' class='equipment_sz'> <label class='condition'>隊列管理器</label><input type='text' name='qmgr' class='equipment_sz'> <label class='condition'>通道名稱</label><input type='text' name='channel' class='equipment_sz'><br /> <label class='condition'>IPADDR</label><input type='text' name='ipaddr' class='equipment_sz'> <label class='condition'>PORT</label><input type='text' name='port' class='equipment_sz'> <label class='condition'>隊列監控閾值</label><input type='text' name='depth' class='equipment_sz'> <label class='condition'>是否監控</label><input type='text' name='flag' class='equipment_sz'><br /> <input type='submit' value='設備添加' class='equipment_add_btn'> </form> </div> </div></body><script type='text/javascript' src='https://rkxy.com.cn/static/Js/jquery-2.2.2.min.js'></script><!-- <script type='text/javascript' src='https://rkxy.com.cn/static/Js/Equipment/addEquipment.js'></script> --></html> def addmqmonitor(req): print req.get_full_path() app= req.POST[’app’] qmgr= req.POST[’qmgr’] channel= req.POST[’channel’] ipaddr= req.POST[’ipaddr’] port= req.POST[’port’] depth= req.POST[’depth’] flag= req.POST[’flag’] conn= MySQLdb.connect( host=’127.0.0.1’, port = 3306, user=’root’, passwd=’1234567’, db =’DEVOPS’, charset='UTF8' ) cursor = conn.cursor() sql = 'insert into mon_mq(name,qmgr,channel,ipaddr,port,depth,flag) values(’%s’,’%s’,’%s’,’%s’,’%s’,’%s’,’%s’)' % (app,qmgr,channel,ipaddr,port,depth,flag) cursor.execute(sql) conn.commit() a = cursor.execute('select name,qmgr,channel,ipaddr,port,flag from mon_mq' ) info = cursor.fetchall() print info print type(info) return render(req,’listmqinfo.html’,{’info’:info}) [root@yyjk templates]#cat listmqinfo.html <html> <head> <title>運維平臺</title> <link rel='stylesheet' type='text/css' href='http://www.b3g6.com/static/Css/Equipment/modifyBtn.css' rel='external nofollow' > <link rel='stylesheet' type='text/css' href='http://www.b3g6.com/static/Css/Public/header.css' rel='external nofollow' rel='external nofollow' > <link rel='stylesheet' type='text/css' href='http://www.b3g6.com/static/Css/Public/menu.css' rel='external nofollow' rel='external nofollow' > </head> <table border='10'>{% for x in info %} <tr><th>{{x.0}}</th><th>{{x.1}}</th><td>{{x.2}}</td><td>{{x.3}}</td><td>{{x.4}}</td><td>{{x.5}}</td></tr>{% endfor %} </table>

以上這篇Django 后臺帶有字典的列表數據與頁面js交互實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久国产精品久久久久久电车 | 国产欧美一区二区三区国产幕精品| 桃色一区二区| 国产一区二区三区免费在线| 成人国产综合| 成人av三级| 久久精品国产68国产精品亚洲| 欧美激情久久久久久久久久久| 老司机免费视频一区二区三区| 精品免费视频| 亚洲精品网址| 日本成人手机在线| 精品视频一二| 亚洲香蕉网站| 青青草91视频| 精品视频一区二区三区在线观看 | 久久亚洲精品中文字幕| 成人在线超碰| 亚洲精品一区二区妖精| 亚洲我射av| 国产乱码精品一区二区亚洲| 蜜桃成人av| 999精品色在线播放| 日韩国产欧美在线播放| 国产91在线播放精品| 欧美成人久久| 国产精品v日韩精品v欧美精品网站 | 亚洲欧美日韩精品一区二区 | 日韩视频网站在线观看| 日韩在线一区二区| 成人片免费看| 国产欧美一级| 亚洲黄色影院| 欧美经典一区| 在线看片一区| 日韩在线看片| 国产欧美另类| 国产精品美女| 欧美日韩精品免费观看视欧美高清免费大片 | 久久av免费看| 男女精品网站| 亚洲婷婷免费| 国产精品66| 亚洲小说春色综合另类电影| 欧美国产偷国产精品三区| 亚洲天堂日韩在线| 国产视频一区三区| 午夜av成人| 欧美丰满日韩| 久草免费在线视频| 久久av免费| 久久精品网址| 国产麻豆一区二区三区精品视频| 激情五月综合网| 美女久久久久| 影视先锋久久| 亚洲高清不卡| 日韩在线欧美| 久久久久美女| 亚洲特色特黄| 首页国产欧美日韩丝袜| 一区在线视频观看| 国产视频一区免费看| 红桃视频国产一区| 激情视频一区二区三区| 一区免费视频| av成人国产| 亚洲精品精选| 欧美一级久久| 国产精成人品2018| 久久免费视频66| 成人av三级| 午夜国产精品视频| 久久av在线| 欧美午夜三级| 日本一区二区高清不卡| 亚洲伊人av| 亚洲专区欧美专区| 亚洲一二av| 黄色精品视频| 欧美日韩国产综合网| 日韩av午夜在线观看| 国产一区二区三区亚洲| 久久久一二三| 天堂成人国产精品一区| 国产欧美日韩| 亚洲精品88| 久久亚洲国产精品一区二区| 日本伊人午夜精品| 成人欧美一区二区三区的电影| 欧美成人国产| 乱一区二区av| 亚洲欧美日韩高清在线| 日韩三区四区| 国精品一区二区| 久久国产三级精品| 九九综合在线| 中文在线中文资源| 欧美日韩a区| 99在线精品免费视频九九视| 国产精品超碰| 日日夜夜免费精品| 日韩中文在线电影| 国产免费av国片精品草莓男男| 久久精品国产www456c0m| 亚洲欧洲av| 最新亚洲一区| 久久精品一区二区不卡| 欧美一区影院| 亚洲精品少妇| 亚洲少妇诱惑| 久久精品国产68国产精品亚洲| 欧美激情 亚洲a∨综合| 亚洲香蕉视频| 中文字幕日韩亚洲| 亚洲综合精品四区| 免费黄色成人| 精品午夜久久| 精品视频99| 久久不见久久见中文字幕免费| 亚洲精品高潮| 久久大逼视频| 麻豆成人在线| 欧美日韩国产一区二区三区不卡| 欧美日韩国产观看视频| 精品五月天堂| 98精品视频| 免费高潮视频95在线观看网站| 国产精品精品| 国产精品精品国产一区二区| 日韩综合在线| 国产一区二区三区不卡av | 国产精品国码视频| 国产精品www.| 日韩美女一区二区三区在线观看| 三上悠亚国产精品一区二区三区| 国产传媒av在线| 久久久人人人| 日韩在线成人| 国产成人精品一区二区三区免费| 成人精品国产亚洲| 国产在线不卡| 日韩一区中文| 欧美黑人巨大videos精品| 精品国产a一区二区三区v免费| 99精品在线| 69堂免费精品视频在线播放| 成人污污视频| 久久国产精品久久w女人spa| 国产精品一区二区三区www| 天堂av在线| 蜜桃久久精品一区二区| 麻豆91小视频| 久久亚洲视频| 国产91在线播放精品| 免播放器亚洲| 精品一区二区男人吃奶| 欧美另类综合| 精品色999| 亚洲日本免费电影| 日韩深夜视频| 日韩高清一区二区| 久久精品国产68国产精品亚洲| 日韩成人在线看| 欧美日韩一二三四| 国产精品一区亚洲| 久久午夜精品| 亚洲视频综合| 精品一区av| 国产欧美日韩综合一区在线播放| 国产偷自视频区视频一区二区| 美腿丝袜亚洲三区| 亚洲精品一二| 久久精品青草| 日韩成人a**站| 精品中文在线| 国产精品日韩精品在线播放| 亚洲另类黄色| 在线一区免费观看| 1000部精品久久久久久久久| 成人污污视频| 精品国产aⅴ| 久久gogo国模啪啪裸体| 欧美久久亚洲| 18国产精品| 国产日韩一区二区三区在线| 日韩在线观看一区二区| 99xxxx成人网| 免费精品国产| 美女网站一区| 亚洲特色特黄| 狠狠色狠狠色综合日日tαg| 国产精品av一区二区| 亚洲成人国产| 国产v综合v| 欧美一区二区三区高清视频| 久久亚洲国产| 尤物在线精品| 日本成人手机在线| 久久不卡日韩美女|