2015-09-17 30 views
0

按鈕,我有一個模板,我有一個像鏈接,我的文章:Django的像Ajax調用

<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調用。 這裏有什麼不對? 謝謝

+2

可能是你應該跟蹤點擊您的鏈接,而不是父DIV上? – valignatev

回答

0

valentjedi是對的:#voteUp是針對<div>,但點擊事件將在<a>

要麼給ID爲<a>標籤,要麼改變你的jquery選擇器。

您也將有prevent the default behaviour of the browser(也就是,打開瀏覽器的頁面)

+0

它也給我301移動永久錯誤 – aryan

+1

@aryan請了解您的HTTP狀態代碼 - 301是不是一個錯誤,這是一個重定向。 –

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>