我有一个模板,我喜欢我文章的链接:
<div id="voteUp">
<h4><a href="{% url "vote_up" article.id %}">Like {{article.up_vote}}</a></h4>
</div>
我想在用户点击文章时增加文章的投票次数。 我已经为它编写了视图并且它运行良好。 但现在我不想刷新页面。 我想从ajax调用它。这就是我在做的事情。
<script>
$('#voteUp').click(function(){
$.ajax({
//type: "POST",
url: "/service/vote/up/{{article.id}}",
success: function(response) {
alert("success");
alert('Liked');
},
}
});
})
我只是想当用户点击“赞”按钮时,应该增加它而不刷新页面。
当我从firebug看到时,我没有看到任何调用的JavaScript。 这里有什么不对? 谢谢
答案 0 :(得分:0)
valentjedi是对的:#voteUp
定位<div>
,但点击事件将在<a>
上。
您可以为<a>
标记提供ID,或者您应该更改您的jquery选择器。
您还必须prevent the default behaviour of the browser(即在浏览器中打开页面)
答案 1 :(得分:0)
<a id="voteUp" href="{% url "vote_up" article.id %}">Like {{article.up_vote}}</a>
<script>
$('#voteUp').click(function(evt){
$.ajax({
//type: "POST",
url: $(evt.currentTarget).attr("href"),
success: function(response) {
alert("success");
alert("Liked");
}
});
evt.stopPropagation();
});
</script>