我有一些div通过foreach循环(php)显示在我的页面上。在每个div中,有一个投票按钮,点击时应该增加1.当我点击一个div中的投票按钮时,所有投票都增加1.这里是我的jquery:
$(document).ready( function($) {
$.ajax({
url: "index.php",
success: function( data ) {
$('.fa-plus').each( function(){
$(this).on('click', function(){
var counter = 0;
counter = counter+1;
$('.votes').html(counter);
})
});
}
})
我的标记片段,我为了简洁而修剪:
foreach ($applications as $application){
echo '<div class="widget-main">',
'<span class="pull-right votes" id="votes-count"><strong>0</strong> </span>',
'<h4 class="list-group-item-heading remove-margin"><i class="fa fa- heart fa-fw"></i>'.$votes.' Votes</h4>',
'<h4 class="list-group-item-heading remove-margin"><i class="fa fa-plus fa-fw"></i> Vote for '.$application ->_name.'</h4>',
'</div>';
}
P.S。我打算在数据库中插入投票。
答案 0 :(得分:1)
$('.fa-plus').on('click', function(){
var voteup = $(this);
$.ajax({
url: "index.php",
data: {"increasevote":1},
success: function(response){
voteup.closest('.votes').text(response)
}
})
})
&#13;
答案 1 :(得分:0)
$(&#39; .votes&#39)。HTML(计数器);这条线似乎是罪魁祸首。它使用投票类将所有计数器分配给所有div。
您需要找到父级投票按钮。我不确定你的HTML,但你可以试试这个。
$(this).closest('.votes').html(counter);