ユーザーが商品コード (入力タグ) と数量 (入力タグ) を Java スクリプトでその商品コードに対して入力するためのフォームに 25 行あり、その商品の数量の値を計算し、それらを金額 (入力タグ) で表示します
。onKeypress/up/downでは次のようになります
function qtycal() {
for (i = 1; i <= 25; i++) {
var quantity_j = document.getElementById("quantity_" + i);
var price_j = document.getElementById("price_" + i);
var amount_j = document.getElementById("amount_" + i);
amount_j.value = price_j.value * quantity_j.value;
} // end of for
これのように、キープレス/ダウン/アップで起動されます
問題は、最初の桁を入力したときに値が計算されず、金額が表示されず、2 桁目のイベントを入力した後に再び発生しましたが、quantity_j と price_j の値全体が乗算されていないことです
正確な金額が得られるようにイベントを作成する方法。
htmlコード
<table border="1" align="center">
<thead>
<tr>
<th>#</th>
<th>Item Name</th>
<th>Item Code</th>
<!--<th>Stock</th>-->
<th>Quantity</th>
<th>Price</th>
<!--<th>Discount %</th>
<th>Amount</th>-->
<!--<th>Discount Amount</th>-->
<th>Net Amount</th>
</tr>
</thead>
<tbody>
<?php for($i=1 ; $i<=25 ; $i++) { ?>
<tr>
<th> <?php echo "$i"; ?> </th>
<td><input id="itemName_<?php echo $i; ?>" onBlur="test()" class="orderInput" type="text" align="center" ></td>
<td><input id="itemCode_<?php echo $i; ?>" onBlur="loaditem()" class="orderInput" type="text" align="center" ></td>
<td><input id="quantity_<?php echo $i; ?>" onBlur="qtycal()" class="orderInput" type="text" align="center" ></td>
<td><input id="price_<?php echo $i; ?>" class="orderInput" type="text" align="center" readonly></td>
<td><input id="amount_<?php echo $i; ?>" class="orderInput" type="text" align="center" readonly ></td>
</tr>
<?php } ?>
</tbody>
<tfoot>
<tr>
<td id="tdTotal" colspan="2" style="font-size:16px"> <b>Totals</b></td>
<td id="totalspace" colspan="3"> </td>
<td><input id="netTotalAll" class="orderInput" type="text" readonly> </td>
</tr>
<button id="addBtn" ><img src="images/add.png" align="middle"></button>
</tfoot>
</table>