在添加动态行之前,我必须获得现有条目的总和,包括此总和和随后生成的动态行的总和。所有值必须作为一个块一起添加。我当前的函数只处理将要创建的动态输入,在添加新输入之前不考虑现有输入。此函数必须收集具有特定类(debtor,creditor)的所有现有输入以及稍后生成的输入。
<table style="text-align:center;" id="dynamicAddRemove">
<tr style="background-color:#007398;color:white;text-align:center;">
<th class="wd-15p fontColor" style="border-left:2px solid;">account</th>
<th class="wd-15p fontColor" style="width:17%;border-left:2px solid;">debtor</th>
<th class="wd-15p fontColor" style="width:17%;border-left:2px solid;">debtor</th>
<th class="wd-15p fontColor" style="border-left:2px solid;">description</th>
</tr>
<tr>
<?php
$request_id= $_GET['id'];
$query_select = "select * from entress_erp_part2 WHERE contact_id like '$request_id'";
$result_fetch = mysqli_query($con,$query_select);
if($result_fetch)
while($row = mysqli_fetch_assoc( $result_fetch)){ ?>
<td class="td"><select class="form-control select_acount js-example-basic-single" name="account[]"required>
<option value=""><?php echo $row['s_mount1'];?></option>
</select>
</td>
<td class="td"><input type="number" value="<?php echo $row['s_debtor'];?>" name="debtor[]" id="fname"class="form-control debtor" required></td>
<td class="td"><input type="number" value="<?php echo $row['creditor'];?>"name="debtor[]" id="james" class="form-control creditor" required></td>
<td class="td"><input type="text" value="<?php echo $row['creditor'];?>" name="description[]" class="form-control" required></td>
<td> <input type="hidden" value="<?php echo $row['s_description'];?>" name="mount1[]" class="form-control mount1" required> </td>
<td> <input type="hidden" value="<?php echo $row['mount'];?>"name="mount[]" class="form-control mount" required> </td>
<td class="td2"><button type="button" name="add" id="add-btn" class="btn btn-success"><i class="fas fa-plus"></i></button></td>
</tr>
<?php
}
}
?>
</tbody>
<br>
</table>
("#add-btn").click(function() {
$("#dynamicAddRemove").append('<tr><td class="td">'+product_dd+'</td>
<td class="td"><input type="number" name="debtor[' + i + ']" id="fname"class="form-control debtor" required>
</td> <td class="td"><input type="number" name="creditor[' + i + ']" id="james" class="form-control creditor " required>
</td> <td class="td"><input type="text" name="description[' + i + ']" class="form-control"required></td>
<td> <input type="hidden" name="mount1[' + i + ']" class="form-control mount1"required></td>
<td> <input type="hidden" name="mount[' + i + ']" class="form-control mount" required></td>
<td class="td2"><button type="button" name="add" class="btn btn-danger remove-tr"><i class="fas fa-trash" ></i></button></td></tr>');
});
$(function() {
function calcSum(sel) {
var sum = 0;
$(sel).each(function() {
sum += parseInt($(this).val());
});
return sum;
}
$("#dynamicAddRemove").on('click', '.remove-tr', function() {
$(this).parents('tr').remove();
$('.sum1').val(calcSum(".debtor"));
$('.sum2').val(calcSum(".creditor"));
});
$("#dynamicAddRemove").on("change keyup", ".debtor", function() {
$('.sum1').val(calcSum(".debtor").toFixed(2));
});
$("#dynamicAddRemove").on("change keyup", ".creditor", function() {
$('.sum2').val(calcSum(".creditor").toFixed(2));
});
});