0
我現在有這個表,當我點擊2我應該得到總列值之和像4,當我在成績KEYUP任何列輸入我應該得到的10現在
<table class="table-bordered alert alert-warning">
<tbody id="assigned_indicators">
<tr class="indicator_title">
<td><strong><em>Indicators Selected</strong></em></td>
<td><strong><em>Assign Weightage(%)</em></strong></td>
<td style="color:#0F4C8F"><strong><em>Achievement 100% per <br/>indicator(%)</em></strong></td>
</tr>
<tr id="indicator_2" class="indicator_body">
<td>Indicator 2</td>
<td><input type="number" name="task[indicators][2]"
value="">
</td>
<td style="color:#0F4C8F"><input type="number" name="task[achieved][2]" ?>"></td> <!-- value=""></td>-->
</tr>
<tr id="indicator_1" class="indicator_body">
<td>Indicator 2</td>
<td><input type="number" name="task[indicators][1]"
value="">
</td>
<td style="color:#0F4C8F"><input type="number" name="task[achieved][1]" ?>"></td> <!-- value=""></td>-->
</tr>
<tr class="indicator_total">
<td><em><strong>Total: </strong></em></td>
<td id="indicator_total_value">
</td>
<td id="achievement_total_value">100%</td>
</tr>
</tbody>
</table>
我的javascript代碼,我已經試過到目前爲止
$("#assigned_indicators ").on("keyup", "input[type='number']", function (event, value) {
var colCount = 0;
var totalWeightage = 0;
//this counts the total column
$('#assigned_indicators tr:nth-child(1) td').each(function() {
if ($(this).attr('colspan')) {
colCount += +$(this).attr('colspan');
} else {
colCount++;
}
});
var colIndex = $(this).parent().children().index($(this));
console.log(colIndex);
$("#assigned_indicators input[type='number']").each(function() {
if ($(this).val() != "")
totalWeightage += parseInt($(this).val());
});
console.log(colIndex);
//add the sum values
if (totalWeightage > 100)
$("#indicator_total_value").html("<span class='red'>error: percent greater than 100</span>");
else
$("#indicator_total_value").text(totalWeightage + " %");
});
我累了,我不只是能得到keypre整個表的價值,但沒有特定的列SS在我的代碼我得到所有總列和按鍵上的當前列還
你可以使用'$(這個)的.index()的''而不是$(這個).parent()。子女()。指數($(本))' – Barmar
好吧,但這只是當前列 –
將一個事件處理程序綁定在另一個事件處理程序中幾乎總是錯誤的。我不確定爲什麼當你已經有''input'的'keyup'處理程序時,爲'td'需要'keyup'處理程序? – Barmar