如何通过名称

时间:2019-07-31 17:13:28

标签: javascript jquery html

我希望所有单选按钮的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?

2 个答案:

答案 0 :(得分:2)

使用http://www.cplusplus.com/reference/cctype/toupper/迭代。

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);

答案 1 :(得分:0)

使用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">