Jquery, чтобы отключить группу переключателей, если одна из них выбрана? - PullRequest
0 голосов
/ 25 января 2012

Мне нужна помощь в написании Jquery для отключения группы радиокнопок, когда она выбрана?

1) Если выбран переключатель с значением = «One1», остальные переключатели с «One2» и «One3» отключены. Выбор «Bk1» активирует их снова.

2) Если выбран переключатель с значением = «One2», другие переключатели с «One1» и «One3» отключены. Выбор «Bk2» активирует их снова.

3) Если выбран переключатель с значением = «One3», остальные переключатели с «One1» и «One2» отключены. Выбор «Bk3» активирует их снова.

<input name="session1" class="Session" type="radio" value="Bk1">Break Out
<input name="session1" class="Session" type="radio" value="One1">One-on-One Consulting 


<input name="session2" class="Session" type="radio" value="Bk2">Break Out
<input name="session2" class="Session" type="radio" value="One2">One-on-One Consulting 


<input name="session3" class="Session" type="radio" value="Bk3">Break Out
<input name="session3" class="Session" type="radio" value="One3">One-on-One Consulting 

Ответы [ 2 ]

2 голосов
/ 25 января 2012

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

$('.Session').click(function(){
   if(this.value == 'One1' && this.checked){
       console.log($('input[value=One2], input[value=One3'));
        $('input[value=One2], input[value=One3]').prop('disabled', true);
   }
   else if(this.value == 'One2' && this.checked){
        $('input[value=One1], input[value=One3]').prop('disabled', true);
   }
   else if(this.value == 'One3' && this.checked){
        $('input[value=One1], input[value=One2]').prop('disabled', true);   
   }
   else{
      $('.Session').not(this).prop('checked', false).prop('disabled', false);
   }
});

Демо

1 голос
/ 25 января 2012

Мне нужно было добавить несколько классов в вашу HTML-разметку, но это то, что вы ищете ( jsFiddle )?

<div>
    <input name="session1" class="Session breakout" type="radio" value="Bk1">Break Out
    <input name="session1" class="Session consulting" type="radio" value="One1">One-on-One Consulting
</div>
<div>
    <input name="session2" class="Session breakout" type="radio" value="Bk2">Break Out
    <input name="session2" class="Session consulting" type="radio" value="One2">One-on-One Consulting
</div>
<div>
    <input name="session3" class="Session breakout" type="radio" value="Bk3">Break Out
    <input name="session3" class="Session consulting" type="radio" value="One3">One-on-One Consulting
</div>

$(document).ready(function(){

    $('.consulting').click(function(){
        $('.Session[name!="' + $(this).attr('name') + '"]').attr('disabled', '');
    });

    $('.breakout').click(function(){
       $('.Session').removeAttr('disabled');
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...