J'ai un ensemble de boutons radio, tous stylisés avec l'interface utilisateur de jQuery. .button()
.
Je veux modifier leur état de vérification. Cependant, lorsque je le fais de manière programmatique sur l'événement change du conteneur avec :
$("#myradio [value=1]").attr("checked", false);
$("#myradio [value=2]").attr("checked", true);
Les valeurs sont modifiées correctement, mais l'interface utilisateur affiche toujours le bouton radio non coché avec le style coché, et le bouton coché semble toujours non coché.
J'ai parcouru la documentation de jQuery UI sur l'onglet button()
pour les boutons radio, mais il n'y a rien sur la façon de changer l'état et de mettre à jour le style de l'interface utilisateur.
En résumé, le problème est que l'appel de la fonction $("selector").button("disable");
ne modifie pas l'état actif du bouton. Le bouton radio sous-jacent est correctement coché, mais l'état actif de l'interface utilisateur ne change pas. J'obtiens donc un bouton grisé qui semble toujours coché, et le bouton réellement sélectionné apparaît non coché.
Solution
$("selector").button("enable").button("refresh");
0 votes
Antony, j'ai essayé et le bouton ("enable") ne fonctionne pas pour moi. Cela ne devrait pas être comme $("selector").attr('checked', true).button("refresh") ; ?