2017-10-09 47 views
0

在这种while循环我有值的列表:总金额上线点击复选框

<?php 
while($row_list = mysqli_fetch_array($res_list)) { 
    echo '<input type="checkbox" class="cost" value="'.$row_list['bedrag_incl'].'">'.$row_list['bedrag_incl']; 
} ?> 

当我点击复选框,我需要点击的项目总数达到了概括起来就是它的总并显示在这里:

<input type="text" id="bedragen_selected" name="bedragen_selected" value="" size="5" style="text-align:right;background-color: #e7e7e9" readonly="readonly" /> 

要做到这一点我有这样的JS代码:

<script type="text/javascript"></script> 
var sum = 0; 

$('.cost').live('click',function() 
{ 
    if($(this).is(':checked')) 
    { 
     sum = sum + parseFloat($(this).val()); 
    } 
    else 
    { 
     sum = sum - parseFloat($(this).val()); 
    } 
    $('#bedragen_selected').val(sum); 
} 
); 
</script> 

对于某些[R eason没有显示结果,甚至给出了错误。 有什么建议吗?

+1

你检查是否'$( '成本 ')。住(' 点击',()的函数 {}'被称为? –

+1

我换成你的点击函数使用'$(document).on('click','.cost',function(){'和[它正在正常工作](https://jsfiddle.net/g4Lxth2f/) –

回答

0

尝试这样,

$(".cost").change(function(){ 
    calculate(); 
}); 


function calculate(){ 
    var sum = 0; 

    $("input[type=checkbox]:checked").each(function(){ 
     sum += parseInt($(this).attr("value")); 
    }); 

    alert(sum); 
} 
2

希望这有助于你。

$(document).on('click', '.cost', function(event) { 
    var total = 0; 
    $('.cost:checked').each(function(){ 
     total += isNaN(parseInt($(this).val())) ? 0 : parseInt($(this).val()); 
    }); 
    $("#bedragen_selected").val(total); 
}); 

$(document).on('click', '.cost', function(event) { 
 
    var total = 0; 
 
    $('.cost:checked').each(function(){ 
 
     total += isNaN(parseFloat($(this).val())) ? 0 : parseFloat($(this).val()); 
 
    }); 
 
    $("#bedragen_selected").val(total); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
 
<input type="checkbox" class="cost" value="1">1<br> 
 
<input type="checkbox" class="cost" value="2">2<br> 
 
<input type="checkbox" class="cost" value="3">3<br> 
 
<input type="checkbox" class="cost" value="4">4<br> 
 
<input type="text" id="bedragen_selected" name="bedragen_selected" value="" size="5" style="text-align:right;background-color: #e7e7e9" readonly="readonly" />