Voici ma configuration: Si radiobutton1
est déjà cochée lorsque la page se charge (il a checked="checked"
dans la source) et je tente de décocher après avoir sélectionné radiobutton2
, l'attribut checked
sur radiobutton1
est ne s'enlevé après avoir sélectionné radiobutton2
:Pas en mesure de décocher un bouton radio après avoir sélectionné un autre
if($('#' + radiobutton1_ID).is(':checked'))
UncheckRadioButton('#' + radiobutton2_ID);
// Utility function to clear a radiobutton's "checked" attribute
function UncheckRadioButton(radiobuttonID) {
radiobuttonID.removeAttr("checked");
}
après avoir sélectionné radiobutton2
et de faire une « Afficher la source » Je ne vois pas checked="checked"
sur radiobutton2
(même si la page sur ce bouton comme coché), et pour radiobutton1
il encore montre checked="checked"
. Pourquoi donc? Il devrait être l'inverse.
MISE À JOUR
Voici un peu plus de mon code. Je sais que les if
parties de déclaration sont faire frapper si ce n'est pas la question, et je sais que les ID de bouton radio (ccRadioBtn
, checkRadioBtn
et paypalRadioButton
) J'utilise sont corrects:
var ccRadioBtn = ccRadioButton; // credit card radio button ID
var paypalRadioButton = payPalRadioClientID;
// ...
if (paypalIsSelected()) {
UncheckRadioButton(checkRadioBtn);
UncheckRadioButton(ccRadioBtn);
// ...
} else {
// force a clear on any previously selected payment options
CheckRadioButton(ccRadioBtn); // default to credit card radio button
UncheckRadioButton(paypalRadioButton);
UncheckRadioButton(checkRadioBtn);
// ...
}
}
function UncheckRadioButton(radiobuttonID) {
$('#' + radiobuttonID).removeAttr("checked");
}
function CheckRadioButton(radiobuttonID) {
$('#' + radiobuttonID).attr('checked', true);
}
Le problème est le suivant: Si un poste de radio bouton par défaut à checked="checked"
et je clique sur un autre bouton radio, l'attribut checked
du premier bouton radio doit être supprimé, mais ce n'est pas le cas. Et le deuxième bouton radio qui a été sélectionné n'a pas checked="checked"
comme il se doit. Je peux voir cela quand je regarde la source de la page. Je ne sais pas pourquoi cela ne fonctionne pas.
J'ai mis à jour mon message avec mon code actuel. Le problème existe toujours. – PositiveGuy
le problème a fini par ne pas être un problème de JS mais j'ai obtenu beaucoup de ce fil. Merci à tous ceux qui ont répondu. – PositiveGuy