Obtenir dynamicment le nom du groupe de boutons radio à l’aide de jQuery

Je voudrais demander s’il existe un moyen d’obtenir un nom de groupe de boutons radio dynamic, c’est-à-dire d’optimiser les 2 fonctions de clic suivantes en une seule en ayant [name=some_variable] .

J’ai essayé:

 $('input:radio').click(function() { alert($('input:radio:checked').attr('name')); }); 

mais il me renvoie toujours le nom du premier groupe de boutons radio cliqué.

 $(document).ready(function(){ $('input:radio[name=q1]').click(function() { var ans1 = $('input[name=q1]:radio:checked').val(); getUserAnswer(1, ans1); }); $('input:radio[name=q2]').click(function() { var ans2 = $('input[name=q2]:radio:checked').val(); getUserAnswer(2, ans2); }); }); 
  
  1. Q1
    Q1 A
    Q1 B
    Q1 C
    Q1 D

  2. Q2
    Q2 A
    Q2 B
    Q2 C
    Q2 D

 $('input:radio').click(function() { console.log($(this).attr('name')); }); 

Vous sélectionnez un nouvel ensemble d’éléments au clic, mais vous avez besoin de l’attr de l’élément actuel. Vous devez donc y faire référence avec ‘this’.

Quelque chose comme ce qui suit devrait fonctionner:

 $('input').click(function() { var thisName = $(this).attr('name'); var qNum = thisName.subssortingng(1);  var ans2 = $('input[name=' + thisName + ']:radio:checked').val();  getUserAnswer(thisName, ans2); });