2012-11-27 31 views
-2

我在HTMLjQuery的 - 當複選框被選中更改值

<input type="checkbox" id="a1"/> 
<input type="checkbox" id="a2" /> 
<input type="checkbox" id="a3" /> 
<span class="price"></span> 

三個複選框我想這樣做: 如果ID A1被選中,改變文本的跨度priceUp。 如果選中ids A1和A2,則將範圍內的文本更改爲priceDown。 如果選中ids A1,A2和A3,則將範圍內的文本更改爲priceNormal。

+1

這很好。你有嘗試過什麼嗎?我們不會爲你做這件事。如果你被困住了,我們會幫忙的,但是我們不會爲你做。 –

+0

http://stackoverflow.com/faq#questions –

+1

http://www.whathaveyoutried.com –

回答

1

試試這個

$('#a1 ,#a2 , #a3').on('click' , function(){ 
    var $a1Check = $('#a1').is(':checked'); 
    var $a2Check = $('#a2').is(':checked'); 
    var $a3Check = $('#a3').is(':checked'); 
    var text = '' ; 
    if($a1Check && $a2Check && $a3Check){ 
     text = 'priceNormal'; 
    } 
    else if($a1Check && $a2Check){ 
      text = 'priceDown'; 
    }  
    else if($a1Check) { 
     text = 'priceUp'; 
    }   

    $('.price').html(text); 
}); 

Check Fiddle

+0

thx ...解決我的問題 – Peter

+0

@彼得...很高興有幫助:) –

0

這樣你可以看到你的複選框是否被選中。

$('#a1').click (function() 
{ 
    var thisCheck = $(this); 
    if (thischeck.is (':checked')) 
    { 
     // Do stuff 
    } 
}); 
3

使用jQuery你可以爲你想要觀看的元素 「變」 聽。

這看起來是這樣的(例如,僅用於ID爲 「A1」):

$("#a1").change(function() { 
    if ($(this).is(":checked")) { 
    // do something if a1 is checked 
    } else if ($(this).not(":checked")) { 
    // do something if a1 is unchecked 
    } 
});