我有一個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