0 votes

"Pseudo-classe ou pseudo-élément 'radio' inconnu".

Il y a de nombreux éléments radio de saisie sur une page Web et chaque élément radio a plusieurs options. Je veux qu'une fonction soit déclenchée chaque fois qu'une option d'un élément radio est cochée. Comment écrire le code en utilisant Jquery ? Un élément d'entrée se présente comme suit :

<div class="below">
<input type="radio" value="information" name="option0"/>
information
<input type="radio" value="communication" name="option0"/>
communication
<input type="radio" value="goods" name="option0"/>
goods
<input type="radio" value="attention" name="option0"/>
attention
</div>

J'ai écrit le code comme suit :

$('input:radio').click(function () {
  if (this.checked) { // or $(this).attr('checked')
    alert(this.value); // or alert($(this).val());
  }
});

Ma version de Jquery est

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

J'utilise Firefox. Dans la console d'erreur, il est indiqué "unknown pseudo-class or pseudo-element 'radio'". Avez-vous une idée ? Quel est le problème ?

Ma question précédente est proche de celle-ci, mais je n'ai pas encore trouvé de solution. Je dois donc demander autour de moi. J'espère que cette question ne sera pas fermée en tant que question dupliquée. Je vous remercie.

1voto

leepowers Points 16420

Peut-être ça ?

$('input[type=radio]').click( ... );

0voto

Konamiman Points 20578

Les éléments de saisie sont généralement contenus dans un élément de formulaire, est-ce votre cas ? Si c'est le cas, vous devez peut-être inclure l'élément de formulaire dans le sélecteur. Voir un exemple ici : http://docs.jquery.com/Selectors/radio

0voto

Konamiman Points 20578

J'ai créé une page de test simple avec votre code, et bien que j'obtienne la même erreur dans la console, cela fonctionne (le message d'alerte s'affiche lorsque je clique sur un bouton radio). Je poste le code de la page ici au cas où cela vous aiderait à repérer quelque chose qui vous aurait échappé :

<html>
<header>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('input:radio').click(function () {
  if (this.checked) { // or $(this).attr('checked')
    alert(this.value); // or alert($(this).val());
  }
});
});
</script>
</header>
<body>
<div class="below">
<input type="radio" value="information" name="option0"/>
information
<input type="radio" value="communication" name="option0"/>
communication
<input type="radio" value="goods" name="option0"/>
goods
<input type="radio" value="attention" name="option0"/>
attention
</div>
</body>
</html>

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