Question Découvrez si le bouton radio est coché avec JQuery?


Je peux définir un bouton radio pour bien vérifier, mais ce que je veux faire est de configurer une sorte de 'écouteur' qui s'active quand un bouton radio est sélectionné.

Prenez par exemple le code suivant: 

$("#element").click(function()
{ 
    $('#radio_button').attr("checked", "checked");
});

il ajoute un attribut coché et tout va bien, mais comment je vais faire ajouter une alerte. Par exemple, cela apparaît lorsque le bouton radio est coché sans l'aide de la fonction click?


493
2018-02-16 11:33


origine


Réponses:


$('#element').click(function() {
   if($('#radio_button').is(':checked')) { alert("it's checked"); }
});

914
2018-02-16 11:38



Si vous disposez d'un groupe de boutons radio partageant le même attribut de nom et que vous soumettez un ou plusieurs événements pour vérifier si l'un de ces boutons radio a été coché, vous pouvez le faire simplement en utilisant le code suivant:

$(document).ready(function(){
  $('#submit_button').click(function() {
    if (!$("input[name='name']:checked").val()) {
       alert('Nothing is checked!');
        return false;
    }
    else {
      alert('One of the radio buttons is checked!');
    }
  });
});

La source

jQuery API Ref


129
2017-07-01 06:01



Comme la solution de Parag a jeté une erreur pour moi, voici ma solution (combinant David Hedlund et Parag's):

if (!$("input[name='name']").is(':checked')) {
   alert('Nothing is checked!');
}
else {
   alert('One of the radio buttons is checked!');
}

CA marchait bien pour moi!


37
2018-06-07 13:26



Vous devez lier l'événement click de la case, car l'événement change ne fonctionne pas dans IE.

$('#radio_button').click(function(){
    // if ($(this).is(':checked')) alert('is checked'); 
    alert('check-checky-check was changed');
});

Maintenant, lorsque vous modifiez l'état par programme, vous devez également déclencher cet événement:

$('#radio_button').attr("checked", "checked");
$('#radio_button').click();

29
2018-02-16 11:57



// Vérifier à travers la classe

if($("input:radio[class='className']").is(":checked")) {
     //write your code         
}

// Vérifier le nom

if($("input:radio[name='Name']").is(":checked")) {
         //write your code         
}

// Vérifier les données

if($("input:radio[data-name='value']").is(":checked")) {
         //write your code         
}

16
2018-01-06 11:51



Une autre façon est d'utiliser prop  (jQuery> = 1.6):

$("input[type=radio]").click(function () {
    if($(this).prop("checked")) { alert("checked!"); }
});

8
2017-09-19 13:25



Si vous ne voulez pas de fonction de clic utiliser la fonction de changement Jquery

$('#radio_button :checked').live('change',function(){
alert('Something is checked.');
});

Cela devrait être la réponse que vous recherchez. si vous utilisez la version Jquery ci-dessus 1.9.1 essayer d'utiliser comme la fonction live a été déconseillée.


6
2018-05-02 07:49



La solution sera simple, Comme vous avez juste besoin d'écouteurs lorsqu'un certain bouton radio est coché. Fais le :-

if($('#yourRadioButtonId').is(':checked')){ 
// Do your listener's stuff here. 
}

6
2018-05-24 09:10



... Merci les gars ... tout ce dont j'avais besoin était la «valeur» du bouton radio coché où chaque bouton radio de l'ensemble avait un identifiant différent ...

 var user_cat = $("input[name='user_cat']:checked").val();

travaille pour moi...


5
2017-09-14 12:08



Radio dynamique générée par bouton radio Vérifier la valeur

$("input:radio[name=radiobuttonname:checked").val();

On change le bouton radio dynamique

$('input[name^="radioname"]').change(function () {if (this.value == 2) { }else{}});

3
2018-05-18 07:47



Travailler avec tous les types de boutons radio et de navigateurs

if($('#radio_button_id')[0].checked) {
   alert("radiobutton checked")
}
else{
   alert("not checked");
}

Travailler Jsfiddle Ici


3
2018-06-01 07:24