Подтвердить что ты не робот

Радиокнопки не отмечены в jQuery

У меня есть эта строка кода для загрузки страницы:

if ($("input").is(':checked')) {

и он работает нормально, когда установлен переключатель. Однако я хочу наоборот. Что-то вдоль линий

if ($("input").not(.is(':checked'))) {

так что оператор my if запускается, когда ни одна из радиоблок не выбрана. Каков наилучший способ сделать это?

4b9b3361

Ответ 1

if ( ! $("input").is(':checked') )

Не работает?

Вы также можете попробовать выполнить итерацию по таким элементам:

var iz_checked = true;
$('input').each(function(){
   iz_checked = iz_checked && $(this).is(':checked');
});
if ( ! iz_checked )

Ответ 2

if ($("input").is(":not(:checked)"))

AFAIK, это должно работать, протестировано против последнего стабильного jQuery (1.2.6).

Ответ 3

Если мой профайлер firebug работает нормально (и я знаю, как его использовать), это:

$('#communitymode').attr('checked')

быстрее, чем

$('#communitymode').is('checked')

Вы можете попробовать эту страницу:)

И тогда вы можете использовать его как

if($('#communitymode').attr('checked')===true) { 
// do something
}

Ответ 4

$("input").is(":not(':checked')"))

Это jquery 1.3, обратите внимание на знаки "и"!

Ответ 5

$('input:radio[checked=false]');

это также будет работать

input:radio:not(:checked)

или

:radio:not(:checked)

Ответ 6

Проверьте это

if($("#selector").is(":checked")) {

  alert('Checked');  

}
else {
  alert('Not checked');
}

Вы можете указать id или класс, например, в месте селектора

Ответ 7

Это тоже работает. Кажется, кратчайшая рабочая нотация: !$('#selector:checked')