JQuery: нужно знать, какая опция была выбрана / отменена при изменении события - PullRequest
0 голосов
/ 02 апреля 2012

У меня проблема с моим списком выбора в jQuery.Я сделал опцию «Выбрать все» со значением «-1», и когда я щелкаю по ней, все опции помечаются как выбранные.Однако, когда я хочу отменить выбор «Выбрать все», я не могу понять, как узнать, действительно ли я отменил выбор «Выбрать все».

Кто-нибудь знает, как яможно сделать это?

HTML:

<select id="selectlist" name="selectlist" checkedAll="false">
     <option id="all" value="-1">Choose all</option>
     <option value="1" choice="true">Option 1</option>
     <option value="2" choice="true">Option 2</option>
     <option value="3" choice="true">Option 3</option>
</select>

Javascript:

$("#selectlist").live("change", function (event) {
    if ($(this).val() == "-1") {
        var isChecked = $("#selectlist").attr("checkedAll");
        if (isChecked == "false") {
            $("#selectlist").attr("checkedAll", "true");
            $("#selectlist option[choice='true']").each(function () {
                $(this).attr("selected", "selected");
            });
        }
        else {
            $("#selectlist").attr("checkedAll", "false");
            $("#selectlist option[choice='true']").each(function () {
                $(this).removeAttr("selected");
            });
        }
    }
});

1 Ответ

0 голосов
/ 02 апреля 2012

Я знаю, что это не совсем конкретное решение вышеуказанной проблемы, но я столкнулся с той же ситуацией некоторое время назад.

Решением стал пользовательский плагин: jQuery UI Multiselect от Эрик Хиндс

Я предлагаю вам попробовать;)

...