JQuery - запустить функцию, если установлен флажок - PullRequest
2 голосов
/ 06 января 2012

Если отмечено: # инструкция-панель будет активирована. Если не отмечено: # инструкция-панель не будет активирована.

Каков наилучший способ сделать это с помощью оператора case. Я знаю несколько операторов if, тогда это не лучший способ. По сути, я хочу скрыть панель инструкций # внутри каждого случая. Не весь выключатель.

<p><input type="checkbox" id="unique-checkbox-name" name="enable-checkbox"/>Checkbox</p>

 $("select[name=map-tool]").change(function (e) {
    var currVal = $(this).val();
    switch (currVal) {
        case "navigation":
            // instructions bar HIDE
            $('#instructions-bar').slideUp('slow');
            // more code
            break;
        case "distance":
            // instructions bar SHOW
            $('#instructions-bar').slideDown('slow');
           // more code
            break;
        case "area":
            // instructions bar HIDE
            $('#instructions-bar').slideUp('slow');
            // more code
            break;
    }
});

1 Ответ

2 голосов
/ 06 января 2012
 $("select[name=map-tool]").change(function (e) {
    var currVal = $(this).val();
    var isChecked = $("#unique-checkbox-name").is(":checked");
    switch (currVal) {
        case "navigation":
            // instructions bar HIDE
            if (isChecked) $('#instructions-bar').slideUp('slow');
            // more code
            break;
        case "distance":
            // instructions bar SHOW
            if (isChecked) $('#instructions-bar').slideDown('slow');
           // more code
            break;
        case "area":
            // instructions bar HIDE
            if (isChecked) $('#instructions-bar').slideUp('slow');
            // more code
            break;
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...