這是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元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

