Dupliquer possible: la
vérification du bouton radio spécifique est cochée
J'ai ces 2 boutons radio pour le moment afin que l'utilisateur puisse décider s'il a besoin de frais de port inclus dans le prix ou non:
<input type="radio" id="postageyes" name="postage" value="Yes" /> Yes
<input type="radio" id="postageno" name="postage" value="No" /> No
Je dois utiliser Jquery pour vérifier si le bouton radio «oui» est coché, et si c'est le cas, faire une fonction d'ajout. Quelqu'un pourrait-il me dire comment je ferais cela s'il vous plaît?
Merci pour toute aide
Éditer:
J'ai mis à jour mon code pour cela, mais cela ne fonctionne pas. Est-ce que je fais quelque chose de mal?
<script type='text/javascript'>
// <![CDATA[
jQuery(document).ready(function(){
$('input:radio[name="postage"]').change(function(){
if($(this).val() == 'Yes'){
alert("test");
}
});
});
// ]]>
</script>
jquery
html
radio-button
Daniel H
la source
la source
Réponses:
Ou, ce qui précède - encore une fois - en utilisant un jQuery un peu moins superflu:
JQuery révisé (amélioré-certains):
Afficher l'extrait de code
Démo de JS Fiddle .
Et, en outre, une légère mise à jour (puisque je modifiais pour inclure des extraits ainsi que les liens JS Fiddle), afin d'envelopper les
<input />
éléments avec<label>
s - permettre de cliquer sur le texte pour mettre à jour le pertinent<input />
- et de changer les moyens de création du contenu à ajouter:Démo de JS Fiddle .
De plus, si vous avez seulement besoin d'afficher du contenu en fonction de l'élément vérifié par l'utilisateur, une légère mise à jour qui fera basculer la visibilité à l'aide d'un show / hide explicite:
Et, enfin, en utilisant uniquement CSS:
Démo de JS Fiddle .
Références:
:checked
sélecteur .~
Combinateur général sibling ( ) .appendTo()
.change()
.:checked
sélecteur .filter()
.is()
.:radio
sélecteur .remove()
.text()
.toggle()
.val()
.la source
Essaye ça
la source
Quelque chose comme ça:
la source
$(...).length
place.#postageyes:checked
ou$('#postageyes').is(':checked')
?is()
renvoie un booléen. Donc l'appel.length()
est cassé. Extrait de la documentation: "Contrairement aux autres méthodes de filtrage, .is () ne crée pas de nouvel objet jQuery. Au lieu de cela, il vous permet de tester le contenu d'un objet jQuery sans modification." - api.jquery.com/isCela écoutera un événement de changement sur les boutons radio. Au moment où l'utilisateur clique
Yes
, l'événement se déclenche et vous pourrez ajouter tout ce que vous voulez au DOM.la source
la source
la source
$("#postageyes:checked"
toujours vrai? N'auriez-vous pas besoin d'utiliser le.length
pour que cela fonctionne?Essaye ça:
la source
la source
Cela écoutera l'événement modifié. J'ai essayé les réponses des autres mais celles-ci n'ont pas fonctionné pour moi et finalement, celle-ci a fonctionné.
la source