Включить «отключенный множественный выбор» с помощью jquery / javascript

#javascript #jquery #select

#javascript #jquery #выберите

Вопрос:

вот мой код ниже. При загрузке страницы все мультиселекты отключены, но как только пользователь нажимает кнопку включения, все мультиселекты должны быть включены. Вот мой код ниже. Я не могу заставить это работать, интересно, почему. Но если я добавлю « $('#multidiv option').prop('disabled', false); » при первой загрузке, это сработает, но все мои мультиселекты будут включены при первой загрузке. Я хочу отключить все при первой загрузке, но включить все, нажав кнопку. Спасибо.

 <div id="multidiv">    
<label style="float:left; margin-right:-2px;">Target Android Device</label>                                 
    <div class="span5" style="display:inline-block; float:left;">
        <select id="android" disabled="disabled" multiple="multiple" name="android[]">
            <option value="Nexus">Nexus</option>
            <option value="HTC">HTC One</option>
            <option value="Sony">Sony Xperia</option>
        </select>
    </div>
</div>
 

Мой код javascript ниже:

 $('#enable_button').on("click",function(){
    $('#multidiv option').prop('disabled', false);
});

$('#android').multiSelect(); //using "http://loudev.com/" plugin
 

Комментарии:

1. Попробуйте $('#multidiv option').removeAttr('disabled'); . Где находится multidiv элемент в вашем html?

2. Я пробовал это, это не работает. Я понятия не имею, почему. Может быть, это из-за плагина?

3. Добавлен элемент multidiv, я забыл добавить сюда… Пожалуйста, проверьте еще раз.

Ответ №1:

Я нашел решение своей проблемы. Этот $('#multidiv option').removeAttr('disabled'); код действительно работает. Это проблема с плагином.

Добавив $('#android').multiSelect('refresh'); , что теперь он работает нормально. Плагин необходимо обновить после этого кода $('#multidiv option').removeAttr('disabled');

Спасибо всем за попытку помочь, кстати.

Комментарии:

1. вы сэкономили мне бесчисленные часы, изучая ту же проблему. Я использую [ loudev.com ] мультиселект и столкнулся с той же проблемой.

2. Рад, что это помогает 😉

Ответ №2:

Почему бы не использовать id <select> самого:

 $('#enable_button').on("click",function(){
    $('#android option').removeAttr('disabled');
});
 

Комментарии:

1. Потому что на самом деле у меня есть еще несколько мультиселектов под этим div.

2. можете ли вы опубликовать скрипку с добавлением этого плагина?

Ответ №3:

вы можете использовать этот скрипт;

 $('#android').multiselect('disable');
and
$("#android").multiselect('enable');
 

его работа для agungpanduan.com