jquery - 使用 jQuery 动态获取单选按钮组名称

标签 jquery radio-button

我想问是否有一种方法可以动态获取单选按钮组名称,即通过使用[name=some_variable]将以下2个点击功能优化为一个。

我尝试过:

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

但它总是返回我单击的第一个单选按钮组的名称。

$(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);
    });                             
});
<body>
    <ol>
        <li><p>Q1<br />
            <input type="radio" id="q1A" name="q1" value="A" />Q1 A<br />
            <input type="radio" id="q1B" name="q1" value="B" />Q1 B<br />
            <input type="radio" id="q1C" name="q1" value="C" />Q1 C<br />
            <input type="radio" id="q1D" name="q1" value="D" />Q1 D<br />
        </p></li>
        <li><p>Q2<br />
            <input type="radio" id="q2A" name="q2" value="A" />Q2 A<br />
            <input type="radio" id="q2B" name="q2" value="B" />Q2 B<br />
            <input type="radio" id="q2C" name="q2" value="C" />Q2 C<br />
            <input type="radio" id="q2D" name="q2" value="D" />Q2 D<br />           
        </p></li>
    </ol>
</body>

最佳答案

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

您正在点击时选择一组新元素,但您需要当前元素的属性,因此您需要使用“this”引用它

关于jquery - 使用 jQuery 动态获取单选按钮组名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5577238/

相关文章:

javascript - 具有多个变量的 React JS 单选按钮组

javascript - 发送 post 请求时 jQuery ajax 不工作

javascript - AJAX上传动态创建的HTML文件

javascript - 从 JavaScript 数组打印值

javascript - 使用 jQuery 呈现随机字体图标(列表中的随机字符串)?

asp.net - Page.FindControl() 在搜索动态控件时返回 null

jquery - 使用 jqTransform 时如何禁用 select

java - 如何将默认单选选项处理为其他单选选项

javascript - 启用基于单选按钮选择的复选框

c# - 如果没有提交选择,单选按钮返回错误答案