這是django開發學生選課系統的最后一篇了,上一篇結束,我們已經知道如何選課(向數據庫里面寫數據)。
這一篇需要講解老師門戶的成績錄入,相當于對已經存在score表的具有sno(學號)與cno(課程號)的記錄,但是還未有或者已有cscore(成績)的數據,可以按需進行修改。至于其他頁面,基本上都是向數據庫里面做查詢而已,就不再一一展開敘述了。
需求分析:
1)老師點擊按鈕之后,可以彈層。
2)彈層后,會自動展示當前已有的分數,可以對其修改。
3)修改的分數,會進行是否在0~100分之間的判斷,不在有效范圍內會報錯。
1、編寫彈層JS
與上一篇一樣,需要將錄入的內容,通過.post函數返回到后端業務邏輯處理。
最大的區別,是onshow處,使用
edit_score_js(cscore,sno,cno)?{ ????d?=?dialog({ ????????????width:?, ????????????title:?, ????????????quickClose:?, ????????????content:?+ ????????????????+ ????????????????+ ????????????????+ ????????????????+ ????????????????+ ????????????????+ ????????????????+ ????????????????+ ????????????????, ????????????ok:?()?{ ????????????????($().val()?<||?$().val()?>){ ????????????????????alert() ????????????????}{ ????????????????????$.post(,{ ????????????????????:$().val(), ????????????????????:sno, ????????????????????:cno, ????????????????},(res)?{ ????????????????????(res.result){ ????????????????????????alert(); ????????????????????} ????????????????},) ????????????????window.location.reload(); ????????????????} ????????????}, ????????????cancelValue:?, ????????????cancel:?()?{ ????????????????console.log() ????????????????}, ????????????onshow:?()?{ ????????????????$().val(cscore) ????????????} ????????}); ????????d.show(); }
獲取了頁面里面的成績,然后在彈層的content里面展示。
2、編寫后端業務邏輯
(==) (request): ????username?=?request.session.get() ????data?=?teacher.objects.filter(=username).values() ????data ????render_to_response(()) (request): ????=?request.session.get() ????cno?=?request.POST.get() ????sno?=?request.POST.get() ????scored?=?request.POST.get() ????score.objects.filter(=cno=sno).update(=scored) ????JsonResponse({:})
3、前端內容與綁定按鈕
CSS與JS引用略,然后將按鈕onclick綁定函數。
成績錄入課程號課程名學生姓名成績編輯{%?for?i?in?data?%} ?????????????????{{?i.course__cno?}}{{?i.course__cname?}}{{?i.course__score__sno__sname?}}{{?i.course__score__cscore?}}{%?endfor?%}
最終效果:點擊修改按鈕彈層,并且彈層內會顯示當前分數。
輸入超過0~100的分數,會報錯提示
輸入0~100以內分數,修改成功。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
