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

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

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

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

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

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

Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
53
0
155 410
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

Ответ принят как подходящий
if ( ! $("input").is(':checked') )

Не работает?

Вы также можете попробовать перебрать элементы следующим образом:

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

Вы также можете отфильтровать этот список по атрибуту имени, который используется этой группой переключателей.

Nathan Long 28.10.2009 17:34
if ( !($("input").is(':checked')) ) Я тоже добавлю дополнительные скобки, чтобы было лучше.
Roko C. Buljan 28.09.2011 00:05
if ($("input").is(":not(:checked)"))

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

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

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

быстрее чем

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

Можете попробовать на этой странице :)

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

if ($('#communitymode').attr('checked')===true) { 
// do something
}
$("input").is(":not(':checked')"))

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

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

это тоже сработает

input:radio:not(:checked)

или же

:radio:not(:checked)

Это точно сработает. Мне потребовалось время, чтобы понять. Это самый элегантный вариант, который вы можете получить без написания кода.

Antwan 14.05.2010 23:45

У меня тоже отлично работает как селектор.

Petro Semeniuk 17.05.2012 06:56

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

(!$('#radio').is(':checked'))

Это сработало для меня

Другие вопросы по теме