我有一个PHP页面,填充MySQL的HTML表格。它输出两个带有ID headTable和'visits'的独立表格。我正在尝试总结“访问”表中的值并将总和输出到相应的“headTable”。还有一个复选框填充输入字段,并且在检查所有复选框时我也无法获得正确的总和。如果我手动键入值,总和是正确的。提前致谢。 Here is an Example on Fiddlejquery总表格输入在多个表
<table id="headTable">
<tr>
<th>First Table</th>
<th><span id="appliedTotal"></span></th>
</tr>
</table>
<table id="visits">
<tr>
<td>Jane</td>
<td>18.45</td>
<td><input type="checkbox"></td>
<td><input class="amount" type="text" size="20" value=""></td>
</tr>
<tr>
<td>Peter</td>
<td>100</td>
<td><input type="checkbox"></td>
<td><input class="amount" type="text" size="20" value=""></td>
</tr>
</table>
<table id="headTable">
<tr>
<th>Second Table</th>
<th><span id="appliedTotal"></span></th>
</tr>
</table>
<table id="visits">
<tr>
<td>Ronald</td>
<td>100</td>
<td><input type="checkbox"></td>
<td><input class="amount" type="text" size="20" value=""></td>
</tr>
<tr>
<td>John</td>
<td>100</td>
<td><input type="checkbox"></td>
<td><input class="amount" type="text" size="20" value=""></td>
</tr>
</table>
和我的Jquery
<script>
$(document).ready(function(){
$(function() {
$('table input[type="checkbox"]').change(function() {
var input = $(this).closest('td').next('td').find('input');
if ($(this).is(':checked')) {
var amount = $(this).closest('td').prev('td').text();
var sum = 0;
$.each($('table#visits'), function() {
$('.amount').each(function() {
sum += Number($(this).val());
$('#appliedTotal').html('$'+sum.toFixed(2));
});
});
input.val(amount);
} else {
input.val('0.00');
var sum = 0;
$('.amount').each(function() {
sum += Number($(this).val());
$('#appliedTotal').html('$'+sum.toFixed(2));
});
}
});
});
$.each($('table#visits'), function() {
$(".amount").keyup(function() {
var sum = 0;
$('.amount').each(function() {
sum += Number($(this).val());
$('#appliedTotal').html(sum);
});
});
});
});
</script>
这就是我一直在寻找这样做。
问题是? – shomeax
您还没有提出具体问题。但是如果你需要在jquery中总结一些输入,那么是什么阻止你将所有的输入提供给一个普通的类并且通过类来抓取它们呢? – GordonM
我的问题是我想通过表格求和得到的值并输出到相应的'headTable'中。这段代码将两个表中的所有值相加,它甚至不是正确的总和。我在这里画一个空白... – Nick