Jquery 保留具有不同ID的元素的计数
我正在尝试创建一个大拇指向上/向下评级演示 但是,它保留了具有不同ID的元素的计数,请查看小提琴(单击向上或向下的两个大拇指以了解我的意思)。如何解决此问题?试试这个Jquery 保留具有不同ID的元素的计数,jquery,counting,Jquery,Counting,我正在尝试创建一个大拇指向上/向下评级演示 但是,它保留了具有不同ID的元素的计数,请查看小提琴(单击向上或向下的两个大拇指以了解我的意思)。如何解决此问题?试试这个 $('.rating .voteup').on('click', function () { var up = $(this).closest('div').find('.up'); up.text(parseInt(up.text()) + 1); return false; }); $('.rating
$('.rating .voteup').on('click', function () {
var up = $(this).closest('div').find('.up');
up.text(parseInt(up.text()) + 1);
return false;
});
$('.rating .votedown').on('click', function () {
var down = $(this).closest('div').find('.down');
down.text(parseInt(down.text()) + 1);
return false;
});
您对所有投票使用的是唯一的变量“ups”,因此它对所有投票保持相同的值。您应该改为使用.data(),以便每个投票都有自己的计数,或.attr('data-count',/**/)。您可以使用ajax将数据发回服务器。据我说,你不必担心。最后一次计数将从服务器接收,因此您无需担心唯一变量问题。谢谢。JShint表示它错过了line up.text(parseInt(up.text())+1)处的基数参数;这很关键吗?您可以使用
parseInt(up.text(),10)基数参数的代码>
$('.rating .voteup').on('click', function () {
var up = $(this).closest('div').find('.up');
up.text(parseInt(up.text()) + 1);
return false;
});
$('.rating .votedown').on('click', function () {
var down = $(this).closest('div').find('.down');
down.text(parseInt(down.text()) + 1);
return false;
});