2013-06-17 4 views
0

Я пытаюсь создать множественный выбор элемент в HTML с 5 вариантамиЗависимого множественного выбор элемента

<select name="user" id="userName" multiple="multiple"> 
    <option>ALL</option> 
    <option>ALL_2</option> 
    <option>ABC</option> 
    <option>XYZ</option> 
    <option>PQR</option> 
</select> 

Я хотел бы иметь ВСЕ и ALL_2, чтобы быть одиночными выбирает. В этом я имею в виду, что если другие параметры выбраны вместе со ALL (или) ALL_2, то ALL (или) ALL_2 должны быть отменены).

Ex: выбор ALL/ALL_2, а затем Ctrl + ABC, XYZ следует предотвратить (или) ВСЕ следует отменить.

Выбор ABC, XYZ, PQR, а затем выбор ALL/ALL_2 должен быть предотвращен (или) ABC, XYZ, PQR следует отменить.

Я хочу сделать это с помощью MooTools/jQuery, перейдя по всем параметрам, чтобы выбрать/отменить выбор, но посмотрев, есть ли лучший способ сделать это, так как может быть намного больше 5 вариантов.

Реферат: Варианты 3-5 являются множественными выборами, но не должны использоваться в качестве мультивыборных вместе с вариантами 1 и 2. Извините, если это сбивает с толку, попытался изо всех сил сообщить об этом.

+0

Почему вы не добавляете атрибут 'disabled' в этот параметр, если выбраны« ALL »или« ALL_2 »? –

+0

Я подумал об этом, но не будет ли это ограничивать пользователей от изменения на другой вариант после выбора ALL или ALL_2? – Nash3man

ответ

0
$('#user_name optgroup option').click(function() { 
    // only affects options contained within the same optgroup 
    // and doesn't include this 
    $(this).siblings().prop('selected', false); 
}); 

Нечто подобное должно работать на вас. Просто сгруппируйте option s с optgroup. Вот работающий example.

+0

Спасибо :) Что-то вроде этого заставило меня начать. Это не будет работать, потому что оно устанавливает «выбранное» значение «False» только в пределах одной и той же optgroup, но в моем случае сообщение должно находиться внутри (AND) вне optgroup. Из вашего примера: когда выбран OPT3 и затем выбран OPT4, теперь OPT3 должен быть установлен на false. – Nash3man

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