在添加动态行之前,我必须获得现有条目的总和,包括此总和和随后生成的动态行的总和。所有值必须作为一个块一起添加。我当前的函数只处理将要创建的动态输入,在添加新输入之前不考虑现有输入。此函数必须收集具有特定类(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)); }); });