2012-01-03 3 views
0

У меня есть несколько переключателей в группе, один из них:Jquery проверки RadioButton и снимите

<input type='radio' id='other' name='Group'></input> 
<label for='other'>Other:</label> 

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

JQuery (это не работает):

$('input:radio[id="other"]').change(
    function(){ 
     if ($(this).is(':checked')) { 
      alert("checked"); 
     } 
     if ($(this).is(':notchecked')) { 
      alert("notchecked"); 
     }   
    } 
); 
+0

с этим кодом, что он показывает? – ianace

+0

@ianace проверенная часть поднимает предупреждение должным образом, но когда я «сниму» кнопку, ничего не происходит – kirby

ответ

2

Вы должны Написать событие изменения для группы радио, а не для каждой кнопки. Затем посмотрите, какая радиокнопка проверена.

Вот ссылка jsFiddle. http://jsfiddle.net/uAR6e/

+0

это сработало! я должен был разместить все кнопки, но это отличный старт. плохо принять ваш ответ за 4 минуты. благодаря! – kirby

2

Попробуйте это. Как было предложено @JQone вам нужно применить функцию к каждой кнопке:

$('input:radio[name="Group"]').change(function(){ 
    if ($('#other').is(':checked')) { 
     alert("checked"); 
    } else { 
     alert("notchecked"); 
    } 
}); 

Работа в примере http://jsfiddle.net/zZPcH/

+0

ни одна из этих работ. первая производит 2 предупреждения сразу после проверки. второй никогда не вызывает предупреждение notchecked, когда кнопка размыта. – kirby

+0

Ahh, я думал, что это флажок, а не переключатель. См. Ответ @ JQone ниже. Я обновлю свой код ... – SpoonNZ

0
if ($(this):not(:checked)) { 
    alert("notchecked"); 
} 
Смежные вопросы