【问题标题】:How do I get all radio button id's via the name如何通过名称获取所有单选按钮 ID
【发布时间】:2019-07-31 17:13:28
【问题描述】:

我希望所有单选按钮的 id 都同名

我试过用这个

<input type="radio" name="user" id="Jason" value="Jason11">
<input type="radio" name="user" id="Adam"  value="Adam11">

var names= $('input[type=radio][name="user"]').attr('id')
console.log(names)

但这仅显示第一个 id

有没有办法同时显示两个id?

【问题讨论】:

标签: javascript jquery html


【解决方案1】:

使用each() 迭代。

var names = [];
$('input[type=radio][name=user]').each(function(i, elm) {
     names.push($(elm).prop('id'))
})
console.log(names)
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<input type="radio" name="user" id="Jason" value="Jason11">
<input type="radio" name="user" id="Adam"  value="Adam11">

更新:

根据您的评论,如果您想获取第 n 个元素的 ID,则可以使用 eq(n - 1) 函数。获取第二个元素 ID 的示例代码:

var name = $('input[type=radio][name=user]:eq(1)').prop('id')
console.log(name);

【讨论】:

  • 然后使用eq()var name = $('input[type=radio][name=user]:eq(1)').prop('id') console.log(name);
  • 您关于姓名的注释对收音机没有意义。他们有相同的名字是有原因的
【解决方案2】:

使用map() 创建数组

var names = $('input[type=radio][name="user"]').map(function() {
  return this.id;
}).get();

console.log(names)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="radio" name="user" id="Jason" value="Jason11">
<input type="radio" name="user" id="Adam" value="Adam11">

【讨论】:

  • 如何访问第二个id?
  • 你的用例到底是什么?
  • 没关系,我已经修好了,这只是我的一个简单错误。感谢您的回答!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多