我正在使用以下内容对我的页面上的所有内容进行总结:http://jsfiddle.net/7wWR6/
<script>
$(document).ready(function() {
$('.newreservation').click(function() {
//get the numbers
var rent = parseFloat($('.rentalcharges').find('#rent').val());
var cleaning = parseFloat($('.rentalcharges').find('#cleaning').val());
var booking = parseFloat($('.rentalcharges').find('#booking').val());
var taxes = parseFloat($('.rentalcharges').find('#taxes').val());
var total = 0;
total = total + (rent+cleaning+booking+taxes);
//set the total
$('.rentalcharges').find('#total').val(total);
console.log('total: ' + total);
});
$('input[type=checkbox]').click(function(){
//get the numbers
var rent = parseFloat($('.rentalcharges').find('#rent').val());
var cleaning = parseFloat($('.rentalcharges').find('#cleaning').val());
var booking = parseFloat($('.rentalcharges').find('#booking').val());
var taxes = parseFloat($('.rentalcharges').find('#taxes').val());
var total = 0;
total = total + (rent+cleaning+booking+taxes);
var checked;
if($('input[type=checkbox]').is(':checked')){
checked = parseFloat($('input[type=checkbox]').val());
total = total + checked;
}else{
total = total - checked;
}
//set the total
$('.rentalcharges').find('#total').val(total);
});
});
</script>
除了复选框外,一切正常。他们什么都不做,只记录总共0.我该如何解决这个问题?如果需要,我会尝试制作一个jsfiddle。我只是在字段中使用了很多mySQL,显然不能简单地复制/粘贴。
编辑:我认为代表我的情况是一个准确的小提琴:http://jsfiddle.net/7wWR6/
答案 0 :(得分:0)
不要执行点击事件,而是尝试像这样的更改事件。
$('input[type=checkbox]').change();
当你选择元素时,看起来你不需要.find()。
而不是这个
$('.rentalcharges').find('#cleaning').val()
你可以这样做
$('#cleaning').val();