54 votes

Boutons Radio pas vérifié dans jQuery

J'ai cette ligne de code pour le chargement de la page:

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

et il fonctionne très bien lorsque le bouton radio d'entrée est cochée. Cependant, je veux le contraire. Quelque chose le long des lignes de

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

de sorte que si mon instruction s'exécute que lorsque aucun des composants radiobutton sont sélectionnés. Quelle est la meilleure façon d'aller à ce sujet?

67voto

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

Ne fonctionne pas?

Vous pouvez également essayer d'itération sur les éléments comme:

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

26voto

Krof Drakula Points 5065
if ($("input").is(":not(:checked)"))

Autant que je sache, cela devrait fonctionner, testé par rapport à la dernière version stable de jQuery (1.2.6).

10voto

Ionut Staicu Points 6523

Si mon firebug profiler fonctionner correctement (et je sais comment bien l'utiliser), ceci:

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

est plus rapide que

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

Vous pouvez essayer sur cette page :)

Et puis vous pouvez l'utiliser comme

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

8voto

yevgeny Points 71
$("input").is(":not(':checked')"))

C'est jquery 1.3, l'esprit de la "et les" signes!

7voto

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

cela permettra également de travailler

input:radio:not(:checked)

ou

:radio:not(:checked)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X