-1
テーブルに請求書フォームがあります。項目に数量を追加すると、各項目の合計が計算されます。数量は空白でリストされていますが、項目の量はあります。私はフィールドに量を追加するときにのみ合計を取得したい。現在、私は量なしで合計を計算することができた。 が親切enter link description hereJavaScriptの数量入力フィールドと価格の合計を計算する方法
<table width="82%" class='table borderless'>
<tr>
<td>ITEM</td>
<td>Quantity</td>
<td>Amount</td>
</tr>
<tr>
<td width="15%">Saddle (75mm x 3/4) : </td>
<td width="11%">
<input type="text" name="num" id="num"> </td>
<td ><input onFocus="findTotal()" type="text" name="qty" id="qty" value="55"/></td>
</tr> <tr>
<td width="15%">Ferrule (19mm) : </td>
<td width="11%">
<input type="text" name="num" id="num"> </td>
<td ><input onFocus="findTotal()" type="text" name="qty" id="qty" value="60"/></td>
</tr> <tr>
<td width="15%">HDPE Pipe (25mm) : </td>
<td width="11%">
<input type="text" name="num" id="num"> </td>
<td ><input onFocus="findTotal()" type="text" name="qty" id="qty" value="4.5"/></td>
</tr> <tr>
<td width="15%">Stopcock (19mm) : </td>
<td width="11%">
<input type="text" name="num" id="num"> </td>
<td ><input onFocus="findTotal()" type="text" name="qty" id="qty" value="45"/></td>
</tr>
</table>
<button type="submit" name="process" class="btn btn-primary" id="submit">Submit Estimate</button>
function findTotal(){
var arr = document.getElementsByName('qty');
var tot=0;
for(var i=0;i<arr.length;i++){
if(parseInt(arr[i].value))
tot += parseInt(arr[i].value);
}
document.getElementById('total').value = tot;
}
どのようにfindTotalは 'あなたが毎回入力変化' findTotal'を呼び出す必要があり、フォームが送信されるか、ボタンがクリックされた '呼んでいます。 –
あなたは正確な問題を記述していません。あなたが言ったのは、あなたの最終目標です。投稿したコードに何が間違っているか教えてください。 – csmckelvey
あなたが欲しいものやこれまでに試したことについて、もっともっとspesificしてください。まず、 'findTotal()'関数が現在行うことは、 'amount'カラムのすべての数値を合計することです。おそらく間違っています。そして私はあなたがお互いの間ですべての行を掛け合わせて結果を計算する必要があると仮定することができます。あなたの回避策は今や厄介であり、あなたの指示は十分ではありません。 –