2013-06-28 76 views
0

我在使用jquery在2個複選框之間切換時遇到困難。目前這就是我所擁有的。使用jquery或javascript在2個複選框之間切換

<div id="chkBoxList" onclick="CheckBoxToggle()"> 
    <font size="2"> 
<input type="checkbox" class="all" name="empType" id="empType1" value="BWR is a Full Time employee. " checked="checked" disabled="disabled"/> 
    Full Time 
<input type="checkbox" class="all" name="empType" id="empType2" value="BWR is a Part Time employee. " /> Part Time 
</font> 
</div> 

jquery如下所示。

function CheckBoxToggle() { 


$('#chkBoxList').click(function() { 
    var $checkbox = $(this).find(':checkbox'); 
    $checkbox.prop('checked', !$checkbox[0].checked); 
    $checkbox[1].checked; 
    $checkbox.trigger('change'); 
}); 



} 

但是,這或者切換爲選中或未選中。因爲,初始值爲一個被檢查和禁用,當點擊第二我希望其他被檢查和禁用,而第一個將被取消選中和禁用。任何幫助表示讚賞。

+1

任何理由使用複選框,而不是單選按鈕?如果你只能選擇一個選項,電臺選項就是你需要的。 – arknave

+0

'$ checkbox.each(function(){$(this).prop ..... etc});' – Omar

回答

0

你需要通過$複選框來使用。每()循環。

$(function(){ 
    $('#chkBoxList').click(function() { 
    var $checkbox = $(this).find(':checkbox'); 

    $checkbox.each(function(){ 
     $(this).prop('checked', !$checkbox[0].checked); 
     }); 


    }); 
}); 

http://jsfiddle.net/mPstq/1/

+0

感謝您的建議。我也會嘗試單選按鈕,這也更容易。但是,我正在學習jquery,所以想要更多地傾向於它。 – Guru

2
<html> 
<body> 
<form name=f1 id=f1> 
<input type=checkbox name=chk1 id=chk1 onclick=javascript:document.f1.chk2.checked=!document.f1.chk1.checked;> Check 1<BR> 
<input type=checkbox name=chk2 id=chk2 onclick=javascript:document.f1.chk1.checked=!document.f1.chk2.checked;> Check 2<BR> 
</form> 
</body> 
</html> 
+0

Great will tr​​y this !!謝謝。 – Guru

0
$('input.all').click(function(e){ 

    $('input.all').prop('checked', false).prop('disabled',false) ; 
    $(this).prop('checked', true).prop('disabled', true) ; 


}) ;