2011-12-19 82 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"/> 

這裏我有我的代碼的問題,我需要計算乘以前兩個文本框。並且結果將顯示在最後一箇中,我的意思是第三個文本框爲TotalAmount。你可以幫幫我嗎?這裏三個文本框出現在單行添加按鈕。當我再次提交添加按鈕新創建的三個框。我需要在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 – 2011-12-19 15:19:21

+0

@Ken Keenan,那麼數組聲明可能是必需的。 – jocken 2011-12-19 15:26:43

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提到的未提及的原因。