关于本站
1、基于Django+Bootstrap开发
2、主要发表本人的技术原创博客
3、本站于 2015-12-01 开始建站
Django的评论库如果填写不完整,或者提交出错,就会跑到自带的页面。
关键是自带的评论页面超级不好看。所以得想方法避开。
为Comments添加Ajax功能,免得提交出错跳到自带的评论页面。
具体可参考django 简易博客开发 4 comments库使用及ajax支持提交前,先在本地验证是否填写。
{% block extra_footer %} {#设置提交评论#} <script type="text/javascript"> $(document).ready(function() { $('#comment_form').submit(function() { if ($("#id_honeypot").val().length!=0) { alert("Stop!垃圾评论"); return false; }; if ($("#id_name").val().length==0) { alert("Error:请输入您的用户名"); $("#id_name").focus(); return false; }; if ($("#id_email").val().length==0) { alert("Error:请输入您的邮箱地址"); $("#id_email").focus(); return false; }; var email=$("#id_email").val(); if(!email.match(/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/)){ alert("Error:邮箱不正确!请重新输入"); $("#id_email").focus(); return false; } if ($("#id_comment").val().length==0){ alert("Error:请输入您的评论"); $("#id_comment").focus(); return false; }; $("#id_timestamp").value=event.timeStamp; $.ajax({ type: "POST", data: $('#comment_form').serialize(), url: "{% comment_form_target %}", cache: false, dataType: "html", success: function(html, textStatus) { window.location.reload(); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert("评论出错," + errorThrown); } }); return false; }); }); </script> {% endblock %}
就这样实现了ajax提交。只有后台运行出错,才会返回error错误。
相关专题: Django评论库开发
黑色的忧虑2011
🇨🇳
2017-10-16 14:29 回复