2011-12-19 3 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로 세 번째 텍스트 상자를 의미합니다. 당신이 나를 도울 수? 여기에 추가 버튼이있는 단일 행에 세 개의 텍스트 상자가 나타납니다. 나는 3 개의 상자로 새로 만든 추가 단추를 다시 제출할 때. 자바 스크립트 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

여기에 자바 스크립트입니다 :

$(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이 언급 한 언급되지 않은 이유 때문입니다.

관련 문제