2012-12-04 30 views
0

我想用jQuery在表單中輸出實時計算,但由於缺乏JS知識,我不確定從哪裏開始。我想知道有沒有人可以幫助我?根據字段值輸出實時計算

這裏是我的字段值:

<input type="hidden" name="total_days" value="{total_days}" /> 
<input type="text" name="cost_per_day" value="" /> 
<p>Total Cost: $<span class="total_cost"></span></p> 

的TOTAL_DAYS將預先填充在頁面加載時的值。 cost_per_day將由用戶輸入。我想在TOTAL_COST跨度來填充爲用戶類型分爲形式,計算是這樣的:

total_days * cost_per_day = total_cost 

回答

3

我已經添加了一個id你隱藏的文本字段和用戶文本字段檢索其值這看起來像這樣。

<input type="hidden" name="total_days" id = "totaldays" value="10" /> 
<input type="text" name="cost_per_day" id = "mytextfield" value="" /> 
<p>Total Cost: $<span class="total_cost"></span></p>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ 

的JavaScript去如下:

$("#mytextfield").on('keyup',function(){ 
     var totalcost= $("#totaldays").val() * $(this).val() 
     $(".total_cost").html(totalcost); 
}) 

希望這有助於..

+1

你可以看到它在這裏的行動http://jsfiddle.net/ejHrc/ – saraf

+0

這個工作很好,謝謝。 :) – Stephen

1

該解決方案的偉大工程,但我試圖讓一個小的變化,我想總是圓的答案到2位小數。我曾嘗試將.toFixed(2)添加到各個點,但它似乎不起作用。像這樣,

<script type="text/javascript"> 
$(document).ready(function() { 
$("#mytextfield").on('keyup',function(){ 
    // alert('pressed') 
    var totalcost= $("#totaldays").val() * $(this).val() 
    $(".total_cost").text(totalcost).toFixed(2); 
}) 
}); 
</script> 

任何人都可以告訴我如何實現兩位小數?

感謝