проверить переключатель и проверить по умолчанию - PullRequest
0 голосов
/ 21 июля 2011

У кого-нибудь есть лучший способ написать этот метод jquery. Если пользователь заходит на страницу и установлен флажок, покажите еще скрыть, но если пользователь установит флажок, отобразится.

$('#rush').is(':checked') ? $("#rushJustificationContainer").show() : $("#rushJustificationContainer").hide();

$('#rush').click(function() {
    $("#rushJustificationContainer").toggle(this.checked);
});

Ответы [ 4 ]

1 голос
/ 21 июля 2011

попробуйте

function Toggle(o, toggle){
 o.toggle(toggle);
}

document.ready(function(){
  Toggle($("#rushJustificationContainer", $('#rush').checked); 
});

$('#rush').click(function(){
 Toggle($("#rushJustificationContainer", this.checked); 
});
1 голос
/ 21 июля 2011

используйте это

document.ready(function(){
    myToggle($('#rush').is(':checked'));
}

$('#rush').click(function(){
    myToggle(this.checked);
}

function myToggle(isChecked) {
    if(isChecked) {
        $("#rushJustificationContainer").show();
    } else {
        $("#rushJustificationContainer").hide();
    }
}
0 голосов
/ 21 июля 2011

Код вопроса довольно оптимален для одноразового использования; До сих пор я предпочел бы это альтернативам.

Вы могли бы сбрить некоторые микросекунды с:

$('#rush')[0].checked ? $("#rushJustificationContainer").show() : $("#rushJustificationContainer").hide();

Пока:

$("#rushJustificationContainer").toggle ( $('#rush').is (':checked') );

может быть проще на полосе прокрутки. :)

~~~ * * 1013

Единственное, что можно сделать, если вы могли бы делать такие вещи более одного раза, то СУХОЙ это .:

function activateCB_toDivControl (cbID, nodeID) {
    $('#' + nodeID).toggle ( document.getElementById (cbID).checked );

    $('#' + cbID).click (function (e) {
        $('#' + nodeID).toggle (e.currentTarget.checked);
    } );
}

Звоните так:

activateCB_toDivControl ('rush', 'rushJustificationContainer');
activateCB_toDivControl ('COD',  'likeHellContainer');
0 голосов
/ 21 июля 2011

Попробуйте это

    $(function(){

      $("#rushJustificationContainer").css({display:$('#rush').is(':checked')?"block":"none"}); 

      $('#rush').click(function() {
          $("#rushJustificationContainer").toggle();
      });


    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...