2011-09-30 105 views
0

我有一个项目列表,我想添加投票向上或向下的能力。我不知道如何设计这个。添加投票到列表项目的最佳方式

  1. 我是否应该将选票作为表格,并将投票的人的投票更多的信息?

  2. 无论#1,一个人投票后,我可以做一个ajax和jquery调用来更新数据库的投票次数,但是如何更新没有刷新页面的投票页?如果投票在第n项不是首先或最后一项,我不能在jQuery中使用append或prepend函数,那么如何更新该确切项目?

+0

“需要输入”。 - Johnny5 你有什么尝试? –

+0

@Mully我仍处于此功能的规划阶段。只是不知道如何让人按下upvote按钮并在页面上立即显示。 – Genadinik

+0

mutch数据将如何显示在一个项目上?如果没有多少,你可以让你的ajax调用返回html,并用新的顺序更新这些项目的div。 –

回答

1

不知道为什么会得到downvoted本 - 似乎是一个很好的问题,我...

不管怎样,我建议储运谁得票总数投沿着 - 它会让你防止人们进行多次投票,而这只能通过投票总数来完成。

并假设被点击,以投票的链接是它适用于李,你可以使用jQuery's success callback,而事实上,$(this)将把得到了点击的链接,找到李想要内:

$('a.vote').click(function() { 
    //Save the value of $(this) - 
    //I'm not positive it'll be the same in the callback: 
    var clicked_link = $(this); 
    jQuery.ajax({ 
     // some options 
     success: function(data, status, xhr) { 
      var li = clicked_link.closest('li.votable'); 
      //update the vote count from `data` 
     }, 
     //some other options 
    }); 
}); 

希望这会有所帮助!

+0

谢谢 - 是啊,似乎对我来说也是一个很好的问题太大声笑。我在你的jQuery例子中看到你在做什么。这很有道理。 – Genadinik