添加投票到列表项的最佳方法

时间:2011-09-30 20:08:47

标签: javascript jquery ajax

我有一个项目列表,我想添加投票或投票的能力。我不知道如何设计这个。

  1. 我是否应该将投票作为一个表格并提供更多关于投票的信息,例如投票的人?

  2. 无论#1如何,一旦有人投票,我可以通过投票计数进行ajax和jquery调用以更新数据库,但如何在不刷新页面的情况下更新进行投票的页面?如果投票是在第一项或最后一项的第n项中,我不能在jQuery中使用append或prepend函数,那么如何更新该确切的项目呢?

1 个答案:

答案 0 :(得分:1)

不确定为什么你为此投降了 - 对我来说似乎是个好问题......

无论如何,我建议存储与投票总数一起投票的人 - 它会让你阻止人们多次投票,而你只能投票总数。

假设点击投票的链接在其适用的LI内,您可以使用jQuery's success callback$(this)将引用被点击的链接,找到你想要的LI:

$('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
    });
});

希望这有帮助!

相关问题