2010-09-04 54 views

回答

30

這是那麼容易,因爲:

$('#UseUsername').change(function(){ 
    if($(this).is(':checked')){ 
    $('#div').show(); 
    } else { 
    $('#div').hide(); 
    } 
}); 

此外,可以觸發該事件在頁面加載時,如果該複選框未選中那麼div會消失。

// Show the div only if the checkbox is checked 
function toggleDiv(){ 
    if($(this).is(':checked')){ 
    $('#div').show(); 
    } else { 
    $('#div').hide(); 
    } 
} 

$(document).onload(function(){ 

    // Set change event to hide/show the div 
    $('#UseUsername') 
    .change(toggleDiv) 
    .trigger('change'); 
}); 
+0

我使用顯示:沒有這樣的div不要出現 – Karem 2010-09-04 16:18:17

+2

+1,要能理解原始問題XD – Supuhstar 2014-08-01 16:41:50

+0

on unchecked - > else part is not working \t \t \t \t $('#sampathcrdr')如果($(this).is(':checked')){ alert(「ok」); } else { alert(「Gonee」); } }); – 2015-10-19 04:04:26

13

一個非常簡單的方法是這樣的:

$('#UseUsername').change(function(){ 
    $('#div').toggle(this.checked); // show if it is checked, otherwise hide 
}); 

試試:http://jsfiddle.net/mHNuN/

+0

這個解決方案比我的好得多:] – Harmen 2010-09-04 18:15:25

+1

我認爲Harmen的解決方案更好。使用切換可以導致複選框狀態,並且所需的功能將不同步。最好在每次更改後測試狀態。 – 2013-08-15 21:21:32

+0

使用切換的(bool)超載不應導致頁面不同步,因爲如果必須顯示或註釋 – 2013-09-18 07:20:44