gpt4 book ai didi

JavaScript - 需要总输入中所有行的总价格总和,但它将这些值连接在一起而不是相加

转载 作者:行者123 更新时间:2023-12-03 02:42:58 24 4
gpt4 key购买 nike

我想将所有行的总价格相加。但它不能添加值,它只是连接值。这是生成 HTML 的 PHP:

$counter = 0;

foreach($db->getRecordSet($sqlTrRecord) as $row){$counter += 1; ?>
<tr id="temTr" class="banktblhd">
<td width="5"> <?php echo($counter); ?> </td>


<td class="w10"> <input type="number" name="item_code" id="item_code" class="form-control" value="<?php echo($row['item_code']); ?>" readonly /></td>
<td class="w10"><input type="text" class="form-control" name="item_name" id="item_name" value="<?php echo($row['item_name']); ?>" readonly /> </td>
<td class="w10"><input type="text" class="form-control" name="description" id="description" value="<?php echo($row['description']); ?>" readonly /></td>
<td class="w10"><input type="number" class="form-control" name="availableQty" id="availableQty" value="<?php echo($row['quantity']); ?>" readonly /></td>
<td class="w10"><input type="number" class="form-control" name="p_cost" oninput="total(this);" id="p_cost" value="<?php echo($row['p_cost']); ?>" readonly /></td>
<td class="w10">
<input type="number" oninput="total(this);" class="form-control" name="quantity" id="quantity" autocomplete="off" /> </td>
<td class="w10">
<input type="number" oninput="total(this);" class="form-control" name="sale" id="sale" autocomplete="off" /> </td>
<td class="w10"><input type="number" oninput="total(this)" class="form-control" name="total_price" id="total_price" readonly />
</td>
<td class="w10" colspan="2"><input type="number" class="form-control" name="total" id="total" readonly /></td>

这是我的 JavaScript:

function total(element) {
var row = element.closest("tr");
var unitRate = row.querySelector("input[name=p_cost]");
var qty = row.querySelector("input[name=quantity]");
var sale = row.querySelector("input[name=sale]");

var total_price = parseFloat(unitRate.value * qty.value) + parseFloat(sale.value);
var total = row.querySelector("input[name=total_price]").value = total_price;

document.getElementById("total").value += total;
}

最佳答案

首先,您需要从输入字段获取一个字符串。然后您需要将字符串类型转换为整数,因为默认情况下它被选为字符串

解决方案:parseInt(value)

let num = parseInt(value)

之后num变量可以添加到任意数字类型的变量中。它将开始工作。

关于JavaScript - 需要总输入中所有行的总价格总和,但它将这些值连接在一起而不是相加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48240695/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com