关于本站
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 回复