2011-04-20 78 views
0
<script language="JavaScript" type="text/javascript"> 
    $(document).ready(function() { 


     $(".chkOptions").click(

      function() { 
       var multiplier = $('#multiplier').val(); 

       var y = $('.chkOptions').val() * multiplier; 
       $(".chkOptions:checked").each(function() { 
        y += parseInt($(this).val()); 
       }); 


       $("#txtSavingsTot").val(y); 

      }) 
      .change(); 



    }); 
    </script> 

此代碼不會引導我在任何地方。 。 。我希望發生的是隱藏字段乘數相乘的複選框我有一個問題,乘以數字,然後獲得總和。 。

<input type="checkbox" name="cb1" id="cb1" value="60" class="chkOptions" /><input type="checkbox" name="cb2" id="cb2" value="40" class="chkOptions" /><input type="checkbox" name="cb3" id="cb3" value="15" class="chkOptions" /><input type="checkbox" name="cb4" id="cb4" value="20" class="chkOptions" /><input type="hidden" name="multiplier" id="multiplier" value="4" /> 

我想發生的事情是該複選框(選中時)相乘的值&大部將顯示,u能幫助#1利弊與旁邊這個問題?謝謝:)

XXXXXXO

回答

3

這是你想要做什麼?

http://jsfiddle.net/afWT2/1/

$(".chkOptions").click(

function() { 
    var multiplier = parseInt($('#multiplier').val()); 

    var y = 0; 
    $(".chkOptions:checked").each(function() { 
     y = y + parseInt($(this).val()); 
    }); 
    $("#txtSavingsSub").val(y); 
    y = y * multiplier; 


    $("#txtSavingsTot").val(y); 

}).change(); 
+0

+1我認爲這可能是。 – 2011-04-20 11:11:10

+0

&誰曾幫助過我,你是如此偉大的紳士! – 2011-04-22 04:05:31

6
var multiplier = $('#multiplier').val(); 

multiplier是一個字符串。

var multiplier = parseInt($('#multiplier').val()); 

是一個整數。

var multiplier = parseFloat($('#multiplier').val()); 

是一個浮點數。

使用你需要的任何一個。


編輯我不太清楚你期待什麼$('.chkOptions').val()給你。

+0

好的,謝謝,但它並沒有顯示正確的價值觀。 。 。 – 2011-04-20 11:08:10

+0

例如,我未選中項目編號。 1它應該返回到零,但它不會。 。 。 – 2011-04-20 11:09:07

+0

@xxxo_tryme:jsfiddle.net上的測試用例。 – 2011-04-20 11:09:49

2

除了通過@Tomalak Geret'kal給出了答案,該行

var y = $('.chkOptions').val() * multiplier; 

應該

var y = parseFloat($(this).val()) * multiplier; 
+0

+1啊,很好的地方。 :) – 2011-04-20 11:09:13

相關問題