Требование 1. Хочу подвести сумму бонуса и зарплаты отдельного ряда 2. Сумма проверенного ряда значений бонуса в Total Bonus Div. 3. Сумма проверенного ряда значения заработной платы к общей сумме заработной платы. 4. Сумма проверенного ряда значений бонусов и зарплат до Net Pay Div.
$('.bonus-in:checkbox').change(function() {
var sum = 0;
var salary = parseFloat($(this).closest('tr').find('.wagein').text());
var bonus = parseFloat($(this).closest('tr').find('.bonus_temp').val()) || 0;
$('.bonus-in:checked').each(function() {
sum += salary + bonus;
});
$('#net_pay').val('₹ ' + sum.toFixed(2));
});
$('.checkAll:checkbox').change(function() {
var sum = 0;
var salary = parseFloat($(this).closest('tr').find('.wagein').text());
var bonus = parseFloat($(this).closest('tr').find('.bonus_temp').val()) || 0;
$('.bonus-in:checked').each(function() {
sum += salary + bonus;
// sum += parseFloat($(this).closest('tr').find('.wagein').text());
});
$('#net_pay').val('₹ ' + sum.toFixed(2));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
<table>
<thead>
<tr>
<th class="text-center"><input type="checkbox" checked="checked" class="checkAll" name="checkAll" /></th>
<th>#</th>
<th>Beneficiary Name</th>
<th class="text-right box">Bonus ₹</th>
<th class="text-right">Salary ₹</th>
<th class="text-right">Net pay ₹</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<input type="checkbox" id="bene_id" checked="checked" class="bonus-in" name="bene_id[]" value="" />
</td>
<td>1</td>
<td>Chellammal Kochimoni</td>
<td><input type="text" id="bonus_temp" class="bonus_temp" name="bonus_temp[]" value="" /></td>
<td class="wagein">400</td>
<td class="row-total">400</td>
</tr>
<tr>
<td>
<input type="checkbox" id="bene_id" checked="checked" class="bonus-in" name="bene_id[]" value="" />
</td>
<td>2</td>
<td>Christal Prema G.</td>
<td><input type="text" id="bonus_temp" class="bonus_temp" name="bonus_temp[]" value="" /></td>
<td class="wagein">400</td>
<td class="row-total">400</td>
</tr>
<tr>
<td>
<input type="checkbox" id="bene_id" checked="checked" class="bonus-in" name="bene_id[]" value="" />
</td>
<td>3</td>
<td>Kamalesan T.</td>
<td><input type="text" id="bonus_temp" class="bonus_temp" name="bonus_temp[]" value="" /></td>
<td class="wagein">400</td>
<td class="row-total">400</td>
</tr>
<tr>
<td>
<input type="checkbox" id="bene_id" checked="checked" class="bonus-in" name="bene_id[]" value="" />
</td>
<td>4</td>
<td>Palammal A.</td>
<td><input type="text" id="bonus_temp" class="bonus_temp" name="bonus_temp[]" value="" /></td>
<td class="wagein">400</td>
<td class="row-total">400</td>
</tr>
<tr>
<td>
<input type="checkbox" id="bene_id" checked="checked" class="bonus-in" name="bene_id[]" value="" />
</td>
<td>4</td>
<td>Thangapazham</td>
<td><input type="text" id="bonus_temp" class="bonus_temp" name="bonus_temp[]" value="" /></td>
<td class="wagein">400</td>
<td class="row-total">400</td>
</tr>
</tbody>
</table>
</div>
<div id="bonus_total">Total Bonus ₹ 0.00</div>
<div id="salary_total">Total Salary ₹ 2,000.00</div>
<div id="net_pay">Net Pay ₹ 2,000.00</div>
Таблица предназначена для ежемесячной оплаты труда работников. Причина использования чекбокса Дата оплаты может отличаться для персонала (если кто-либо может не присутствовать на день оплаты или длительный отпуск) Размер заработной платы фиксирован, поэтому все данные извлекаются из таблицы персонала из базы данных с использованием структуры codeigniter. Значение бонуса не уникально для всех месяцев. поэтому мы используем ввод текста здесь.