2011-12-19 17 views
0
<INPUT name="Qty[]" id="Qty[]" type="text" class="south" /> 
<INPUT name="Amount[]" id="Amount[]" type="text" class="south"/> 
<INPUT name="TotalAmount[]" id="TotalAmount[]" type="text" class="south" disabled="disabled"/> 

ここで私は最初の2つのテキストボックスを掛ける計算が必要なコードに問題があります。その結果が最後のものに表示されます。つまり、TotalAmountとして3番目のテキストボックスを意味します。私たちを手伝ってくれますか?ここでは3つのテキストボックスが追加ボタン付きの単一行に表示されます。 3つのボックスで作成した新規ボタンをもう一度送信すると私はJavaスクリプトのjqueryでそれを完了する必要があります。私を助けてください。onchangeイベントの配列のテキストボックス

答えて

0

まず、配列宣言を削除します。入力フィールドは配列として使用していません。それらは単一の値です。

<INPUT name="Qty" id="Qty" type="text" class="south" /> 
<INPUT name="Amount" id="Amount" type="text" class="south"/> 
<INPUT name="TotalAmount" id="TotalAmount" type="text" class="south" disabled="disabled"/> 

jquery。

$(document).ready(function(){ 
    qty = $("#Qty").val(); 
    amount = $("Amount").val(); 
    $("#Qty, #Amount").keyup(function(){ 
    $("#TotalAmount").val((qty)*(amount)); 

    }); 
}); 
+1

バックエンドがPHP –

+0

@Ken Keenanの場合、配列の宣言が必要な場合があります。 – jocken

0

はここにあなたのJavaScriptです:

$(document).ready(function() {   
    var $quantity = $('#Qty\\[\\]'), 
     $amount = $('#Amount\\[\\]'), 
     $total = $('#TotalAmount\\[\\]'), 
     quantity, 
     amount; 
    $($quantity.add($amount)).keyup(function() { 
     quantity = Number($quantity.val().replace(/[^0-9,.]/g, '')); 
     amount = Number($amount.val().replace(/[^0-9,.]/g, '')); 

     $total.val(quantity * amount); 
    }); 
}); 

UPDATE DOMを維持するために変更し、彼らがそのようにする必要が場合には同じIDが。 @Ken Keenanに言及されているような言及されていない理由のために。

関連する問題