无为清净楼资源网 Design By www.qnjia.com
在试了很多次了,终于搞定了,上代码吧。(我用的是jQuery的ajax,不是原生的)
js代码:
<script> $(document).ready(function () { getcomment(); $('.comment-box button').click(function () { var comment_text = $('.comment-box textarea').val(); $.ajax({ type: 'POST', url: '/bbs/article/{{ article_list.id }}/comment/', data: {comment: comment_text}, success:function (callback) { var data = $.parseJSON(callback); $('.callback').html(data.result); if(data.result === 'successfully') { getcomment(); } } }) }); }); function getcomment() { $.ajax({ type: 'GET', url: '/bbs/article/{{ article_list.id }}/get_comment/', success:function (call) { var datas = $.parseJSON(call); $('.comment-list').html(datas.answer); } }) } </script>
在全文加载后调用getcomment()函数,从数据库中获取评论,自己写的评论提交后再次调用getcomment()函数,自动刷新
html模板(用到是bootstrap模板):
<div class="row"> <div class="comment-list" style="margin-left: 10px"> </div> </div> <div class="row"> <article class="col-xs-12"> <h4>请评论:</h4> <div class="comment-box"> <textarea class="form-control" rows="3"></textarea> <span class="callback"></span><button type="submit" class="btn btn-success pull-right" style="max-width: 5px;">评论</button> </div> </article> </div> <hr>
视图函数:
@csrf_exempt def comment(request,article_id): if request.method == 'POST': comments = request.POST['comment'] if len(comments) < 5: result = u'评论数需大于5' return HttpResponse(json.dumps({'result': result})) else: result = 'successfully' Comment.objects.create(content= comments, article_id=article_id) return HttpResponse(json.dumps({'result': result}))
这是提交评论的函数,别忘记添加csrf装饰器
def get_comment(request, article_id): article_list = get_object_or_404(Article, id=article_id) comments = article_list.comment_set.all() html = '' for i in comments: ele = '<div class="row"><article class="col-xs-12"><p class="pull-right"><span class="label label-default">作者:' + 'i.user' + '</span></p><p>' + i.content + '<ul class="list-inline"><li><a href="#" rel="external nofollow" ></a></li></ul></article></div><hr>' html += ele return HttpResponse(json.dumps({'answer': html}))
后台获取评论的函数。
最后将textarea的值清空:
function resettext() { $('.form-control').val(''); }
以上所述是小编给大家介绍的django ajax提交评论并自动刷新功能的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
无为清净楼资源网 Design By www.qnjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无为清净楼资源网 Design By www.qnjia.com
暂无评论...
更新日志
2024年11月13日
2024年11月13日
- 张艾嘉1997《滚石24K》24K金碟珍藏版系列[低速原抓WAV+CUE][1.1G]
- 宝可梦大集结开服有哪些免费时装获取 大集结免费时装获取大全
- 宝可梦大集结国服新手宝可梦怎么选 新手公测宝可梦推荐
- 宝可梦大集结国服公测福利获取方法大全 大集结开服福利有哪些
- AminaFigarova-SuiteForAfrica(2024)[24-96]FLAC
- 黑鸭子VS绿色森林2007-男女情歌对唱[首版][WAV+CUE]
- 群星《半个月亮爬上来》[DTS-WAV]
- 日本大雷少女COS赏
- 《怪猎荒野》PS5Pro性能表现一般 外媒:会有专门优化
- 《碟中谍8》首支预告公布!阿汤哥手扒飞机惊心动魄
- 孙露《忘不了》1:1黄金母盘直刻珍藏版[低速原抓WAV分轨][1G]
- 试音宝典《试机二十六号》K2HD母盘直刻[低速原抓WAV+CUE][1.1G]
- 群星《唱给女人的歌》24K德国HD金碟[WAV+CUE]
- 孙燕姿.2011-是时候【美妙音乐】【WAV+CUE】
- 苏芮.2003-回首·时代全经典2CD【华纳】【WAV+CUE】