jQuery Tout sélectionner le bouton radio

voix
2

Je travaille sur une forme longue qui a plusieurs groupes de boutons radio.

Au fond, il y a un bouton radio « No All ». Quand il est sélectionné, je voudrais faire en sorte que tous les boutons radio « N » sont sélectionnés, mais je ne peux pas le faire fonctionner. Voici une version simplifiée du code:

jQuery:

$(document).ready(function(){
//initially hide the Remove All Questions
$(div.#removeAllquest).hide();

////////////  Show Remove All Questions if radio button selected 
$(input.#RemoveAll).click(function() {
  if ($(this).is(':checked'))
    $(input:radio [class*='radioR']).attr(checked,true); 
  else
$(input:radio [class*='radioR']).attr(checked,false); 
});

});

Forme:

<table>
  <tr>
    <td>Y<input type=radio name=row1 value=row1col1 class=q123col1></td>
    <td>N<input type=radio name=row1 class=radioR value=row1col2></td>
    <td>M<input type=radio name=row1 value=row1col3 class=q123col3></td>
  </tr>
  <tr>
    <td>Y<input type=radio name=row2 value=row2col1 class=q123col1></td>
    <td>N<input type=radio name=row2 class=radioR value=row2col2></td>
    <td>M<input type=radio name=row2 value=row2col3 class=q123col3></td>
  </tr>
  <tr>
    <td>Y<input type=radio name=row3 value=row3col1 class=q123col1></td>
    <td>N<input type=radio name=row3 class=radioR value=row3col2></td>
    <td>M<input type=radio name=row3 value=row3col3 class=q123col3></td>
  </tr>
  <tr> 
    <td colspan=2>No All </td>
    <td>
      <input name=RemoveAll id=RemoveAll type=radio value=Y>
    </td>
  </tr>
</table>

Qu'est-ce que je fais mal?

Créé 26/08/2009 à 23:01
source utilisateur
Dans d'autres langues...                            


3 réponses

voix
11

Les deux doivent travailler - avec le premier j'ai essayé de garder votre style. Avec la seconde je l'ai changé le style un peu. Avec votre échantillon, il n'y a pas vraiment un moyen de les décocher une fois qu'ils ont été vérifiés.

$("input.#RemoveAll").click(function() {
    if ($(this).is(':checked'))
        $("input:radio.radioR").attr("checked", "checked");
    else
        $("input:radio.radioR").removeAttr("checked");
});

$("#RemoveAll").click(function() {
    if ($(this).is(':checked'))
        $(".radioR").attr("checked", "checked");
    else
        $(".radioR").removeAttr("checked");
});
Créé 26/08/2009 à 23:39
source utilisateur

voix
1

Cela devrait faire ce que vous avez besoin ...

$("input.#RemoveAll").click(function() {

  if ($(this).attr('checked') === "checked"){

    $("input:radio[class*='radioR']").attr("checked","checked"); 

  }else{

    $("input:radio[class*='radioR']").removeAttr("checked"); 

  }
});

elle pourra être utile, Sinan.

Créé 26/08/2009 à 23:41
source utilisateur

voix
1

Tout d'abord, autant que je sache les contrôler accepte vérifié comme une valeur valide en XHTML. Donc, quelque chose comme ce qui suit devrait faire l'affaire

$("#RemoveAll").change(function() {
    if ($(this).is(':checked'))
            $("input:radio.radioR").attr("checked","checked"); 

    else
            $("input:radio.radioR").removeAttr("checked"); 
    });
});

Notez le changement de sélection pour la supprimer tout bouton radio que l'ajout d'un filtre d'élément d'entrée est pas vraiment nécessaire que $ ( « # id ») appelle document.getElementById.

Créé 26/08/2009 à 23:39
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more