2012-06-21 4 views
-2

나는 2 개의 입력 값 (양은 & 금액)을 곱해야하고 그 다음에 합계를 구해야합니다. 내 문제는 여러 개의 행/필드 집합이있을 것이므로 키 조합에서 각 행의 합계를 얻는 것이 이상적입니다.각 행의 총계를 얻으십시오

는 HTML :

<fieldset> 

<p>Title</p> 
<label id="">Quantity</label><input type="text" class="quantity" id="" value="Quantity" name=""> 
<label id="">Amount</label><input type="text" class="amount" id="" value="Amount" name=""> 
<label id="">Total</label><input type="text" class="total" id="" value="Total" name=""> 

</fieldset> 

<fieldset> 

<p>Title</p> 
<label id="">Quantity</label><input type="text" class="quantity" id="" value="Quantity" name=""> 
<label id="">Amount</label><input type="text" class="amount" id="" value="Amount" name=""> 
<label id="">Total</label><input type="text" class="total" id="" value="Total" name=""> 

</fieldset> 

여러 행은 버튼을 통해 추가 할 수 있습니다. 어떤 도움이라도 대단히 감사합니다.

+4

[? 당신이 시도 무엇 (http://mattgemmell.com/2008/12/08/what-have-you- 시도한 /) – Mathletics

답변

0

각 입력의 keyup에서 .val()을 사용하여 각 입력란의 값을 가져온 다음 곱할 수 있습니다. 이 같은

$("fieldset input").keyup(function() { 
    var quantity = $(this).parent().find(".quantity").val(); 
    var amount = $(this).parent().find(".amount").val(); 

    $(this).parent().find(".total").val(quantity * amount); 
}); 

DEMO

0

뭔가 :

$(document).delegate(".total", "keyup", function() { 
    var $fieldset = $(this).closest("fieldset"), 
     total = $fieldset.find(".quantity").val() * $fieldset.find(".amount").val(); 
    $(this).val(total); 
}); 
+0

그러나, 유의 사항 : * jQuery 1.7부터 .delegate()는 .on() 메소드로 대체되었습니다. 그러나 이전 버전에서는 이벤트 위임을 사용하는 것이 가장 효과적인 방법으로 남아 있습니다. [출처] (http://api.jquery.com/delegate/) * – egasimus

+0

많은 도움을 주신 모든 분들께 감사드립니다. – Andross

관련 문제