2010-09-04 2 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

я использовать дисплей: нет так ДИВ Dont появляется – Karem

+2

+1 за то, что в состоянии понять, исходный вопрос XD – Supuhstar

+0

по непроверенным -> еще часть не работает \t \t \t \t $ ('# sampathcrdr') .change (function() { if ($ (this) .is (': checked')) { alert ("ok"); } else { alert ("Gonee"); } }); –

13

Самый простой способ будет выглядеть так:

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

Попробуйте:http://jsfiddle.net/mHNuN/

+0

Это решение намного лучше, чем мое:] – Harmen

+1

Я думаю, что решение Harmen лучше. Использование переключателя может привести к тому, что состояние флажка и желаемая функциональность перестанут синхронизироваться. Лучше всего проверить состояние после каждого изменения. –

+0

Использование (bool) перегрузки переключателя не должно приводить к тому, что страница перестает синхронизироваться, когда вы проходите, если она должна быть показана или заметна –

Смежные вопросы