javascript – 使用jQuery选择单选按钮时出错

我有这个问题,我有这些单选按钮

<input type="radio" name="bank" id="bank-1" data-movt="0"> Bank 1 <br />
<input type="radio" name="bank" id="bank-2" data-movt="0"> Bank 2 <br />

当我按下“保存”按钮时,假设获取id的名称和data-movt的值,而不是总是得到第一个单选按钮的值

<button type="button" id="save-bank" class="btn-save">Save</button>

当我选择第二个单选按钮时总是显示我的错误消息,这是我的jQuery代码:

$('#save-bank').click(function() {

    if ($('[name="bank"]').prop('checked') == true) {

        var id   = $('[name="bank"]').attr('id');
        var movt = $('[name="bank"]').data('movt');

        alert(id + ' - ' + movt);

    } else {

        alert('You need to select a bank');
    }
});

难道我做错了什么?遗漏了什么?因为它只适用于第一个单选按钮,我只能选择一个单选按钮,但我需要获取所选收音机的值,希望你能帮助我,谢谢.

最佳答案 尝试…这应该提供单个元素,而不是所有[name =“bank”]元素.

    if ($('[name="bank"]:checked')) {
      var id   = $('[name="bank"]:checked').attr('id');
      var movt = $('[name="bank"]:checked').data('movt');
      alert(id + ' - ' + movt);
    } else {
      alert('You need to select a bank');
    }

虽然您可以循环遍历所有元素,但这是一种更简单的方法来选择正确的“单个”元素,而无需JavaScript循环的开销.

点赞