détecter la radio / case à cocher « checked » états dans l'interface utilisateur jquery. boutons sous-jacents ne mettent pas à jour
-
26-09-2019 - |
Question
J'utilise le bouton jQuery UI widget sous une forme que je dois valider pour certains la radio / contrôle des éléments de boîte.
Selon la démo dans le lien fourni -
Leurs (les éléments originaux) étiquette associée est de style à apparaître comme le bouton, tandis que le sous-jacent entrée est mis à jour en cliquant dessus.
si vous inspectez même la page d'exemple, je fourni les éléments sous-jacents bouton ne sont pas mis à jour avec quoi que ce soit . Note
-. le bouton radio milieu dans l'exemple est cochée par défaut
J'utilise le code suivant pour détecter les états du bouton -. Curieusement son toujours vrai (pensé que ce serait faux)
$el = $("#someCheckbox");
if($el.attr('checked')){ //do stuff }
On dirait que je peux obtenir l'état du bouton des utilisations étiquette jquery ui comme le style de bouton (a la class="ui-state-active)
, mais je voudrais éviter de lire les étiquettes et bâton pour valider les boutons radio réels.
Suis-je tirer le mauvais formulaire de données en accédant au bouton radio d'origine?
ou
Est-ce potentiellement un bug dans le jquery ui butotn widget?
La solution
Il suffit de vérifier les pages de démonstration à jqueryui.com. On dirait que ça fonctionne très bien là-bas. Cependant laissez jQuery décider si l'entrée est cochée. Essayez
$el = $("#someCheckbox");
if( $el.is(':checked') ){ //do stuff }
L'espoir qui aide.