jquery函数: is a radio checked/same id

标签 jquery function radio-button find each

我有一台 radio 。

 <label class="radio inline" for="radios-BRE2b1">
    <input type="radio" name="radios-BRE2b1" id="BRE2b1" value="oui" required="" class="requiredvqradio">Oui</label>
<label class="radio inline" for="radios-BRE2b1">
    <input type="radio" name="radios-BRE2b1" id="BRE2b1" value="non" required="" class="requiredvqradio">Non</label>
<label class="radio inline" for="radios-BRE2b1">
    <input type="radio" name="radios-BRE2b1" id="BRE2b1" value="nsp" required="" class="requiredvqradio">Je ne sais pas</label>

好的,它无效...不是唯一的 ID。

我想创建一个函数来知道是否选择了其中一项。

    function testemoi(name) {
    alert(name);
    $(this).find("#" + name).each(function (i, obj) {

        alert(obj.attr('name'));

        if (obj.is(":checked"))

        alert("ok");

    });


}
testemoi("radios-BRE2b1");

我认为我的函数有语法问题,但我看不出问题是什么。

jsfiddle here

感谢您的帮助。

最佳答案

由于身份的使用无效,因此您无法使用 # 选择器来查找元素。这只会找到其中一个元素,因此您需要使用属性选择器。

each 循环内,作为参数获得的对象是一个元素,而不是包含该元素的 jQuery 对象。

您使用字符串“radios-BRE2b1”调用该函数,但元素的 id 为 BRE2b1

我通过单击链接来运行该函数,以便您可以在测试之前选择单选按钮:

function testemoi(name) {
  log(name);
  $("[id=" + name + "]").each(function (i, obj) {
    log($(obj).attr('name') + ': ' + $(obj).is(":checked"))
  });
}

$(document).ready(function(){
  $('.test').click(function(){
    testemoi("BRE2b1");
  });
});

function log(text){
  $('.log').append($('<div>').text(text));
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<label class="radio inline" for="radios-BRE2b1">
    <input type="radio" name="radios-BRE2b1" id="BRE2b1" value="oui" required="" class="requiredvqradio">Oui</label>
<label class="radio inline" for="radios-BRE2b1">
    <input type="radio" name="radios-BRE2b1" id="BRE2b1" value="non" required="" class="requiredvqradio">Non</label>
<label class="radio inline" for="radios-BRE2b1">
    <input type="radio" name="radios-BRE2b1" id="BRE2b1" value="nsp" required="" class="requiredvqradio">Je ne sais pas</label>
<br>
<a href="#" class="test">Click me to test</a>

<div class="log"></div>

关于jquery函数: is a radio checked/same id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32797428/

相关文章:

wpf - 将单选按钮组绑定(bind)到 WPF 中的属性

jquery - 如何根据另一个单选按钮的点击情况设置一个单选按钮

javascript - 从具有不同值的逗号分隔 JSON 对象填充 html 下拉列表

javascript - 想要删除以前添加的类并将新类添加到同一 div

javascript - 如何让基础中的狂欢模式正常工作?

c++ - 返回类型是函数签名的一部分吗?

c - 对于这个例子,函数 my_func 是否暴露给链接器?

javascript - 未捕获的 TypeError : this. state.map 不是函数

android - 你如何在 Android 中将文本放在 RadioButton 的上方或下方

javascript - spring mvc中使用jquery进行URL映射