jQueryを利用しての自動計算での質問があります。
HTML
1<div class="fare"> 2 <input type="number" name="fare" placeholder="交通費を入力してください (円)" id="travelCost1" class='txtCal'><br> 3</div> 4 5<div class="hotelName"> 6 <input type="text" name="hotelName" placeholder="ホテル名を入力してください" id="travelCost2" class='txtCal'><br> 7</div> 8 9<div class="hotelFee"> 10 <input type="number" name="hotelFee" placeholder="ホテル代を入力してください (円)" id="travelCost3" class='txtCal'><br> 11</div> 12 13<div class="mealFee"> 14 <input type="number" name="mealFee" placeholder="食事代を入力してください (円)" id="travelCost4" class='txtCal'><br> 15</div> 16 17<div class="otherAmount"> 18 <input type="number" name="otherAmount" placeholder="その他費用を入力してください (円)" id="travelCost5" class='txtCal'><br> 19</div> 20 21<div class="totalFee"> 22 <input type="hidden" name="totalFee"> 合計金額 : <span id="travelCost6" class="total_sum_value"></span>円<br> 23</div>
jQuery
1<script> 2$(function() { 3 calc_price(); 4 $("#travelCost1").change(function(){ 5 calc_price(); 6 }); 7 $("#travelCost3").change(function(){ 8 calc_price(); 9 }); 10 $("#travelCost4").change(function(){ 11 calc_price(); 12 }); 13 $("#travelCost5").change(function(){ 14 calc_price(); 15 }); 16 17 function calc_price(){ 18 var t1 = parseInt($("#travelCost1").val()); 19 var t3 = parseInt($("#travelCost3").val()); 20 var t4 = parseInt($("#travelCost4").val()); 21 var t5 = parseInt($("#travelCost5").val()); 22 var total = t1 + t3 + t4 + t5; 23 $("#travelCost6").text(total.toLocaleString()); 24 }; 25}); 26</script>
このような形で書いたのですが、入力したものが文字列として認識され、
文字列同士の足し算になってしまいます。
解決策をお願いいたします。
回答3件
あなたの回答
tips
プレビュー