我有2个输入的namegroup1group2 )。 给定其中一个name s,如何获得复选框的索引?

<input type="radio" name="group1" value="Milk"> Milk<br>
<input type="radio" name="group1" value="Butter" checked> Butter<br>
<input type="radio" name="group1" value="Cheese"> Cheese
<hr>
<input type="radio" name="group2" value="Water"> Water<br>
<input type="radio" name="group2" value="Beer"> Beer<br>
<input type="radio" name="group2" value="Wine" checked> 

例如,如果我在检查第二无线电框group2 (“啤酒”)它会返回2。

编辑:基于反馈的演示 还是行不通。

===============>>#1 票数:2

您需要找到每个组的选中元素,然后找到它的索引。 确保在index()函数内部进行过滤,否则它将在所有同级中给出索引,而不仅仅是该组的输入。

var group1Index = $('input[name="group1"]:checked').index('input[name="group1"]');
var group2Index = $('input[name="group2"]:checked').index('input[name="group2"]');

编辑注意index()函数的索引为0。

===============>>#2 票数:1

您可以使用javascript遍历按钮,并返回已选中的按钮:

function getRadioValue(RadioName)
{
var colRadio = document.getElementsByName(RadioName);
for (var i = 0; i < colRadio.length; i++)
{
if (colRadio[i].checked)
{
return colRadio[i].value;
}
return null;
}

vValue = getRadioValue("group1");

===============>>#3 票数:1

返回名为“ group1”的已检查输入元素的从0开始的索引

$('input[name="group1"]:checked').index()

===============>>#4 票数:0 已采纳

我不确定您要做什么。 几乎所有其他答案都与index()有关 ,但是在您的情况下,第二个单选按钮index()不会像您想要的那样返回2,因为索引基于0, 所以它将返回1

该jsfiddle展示了如何获取特定组中所选输入的索引/值/分数/数量 ,以及如何汇总所有所选单选按钮的值。

<form id="myForm">
     <h3>First Group</h3>

    <input type="radio" name="group1" value="the-first" data-points="0">First</input>
    <input type="radio" name="group1" value="the-second" data-points="20">Second</input>
    <input type="radio" name="group1" value="the-third" data-points="300">Third</input>
    <hr>
    <h3>Second Group</h3>
    <input type="radio" name="group2" value="four" data-points="4">4</input>
    <input type="radio" name="group2" value="five" data-points="5">5</input>
    <input type="radio" name="group2" value="six" data-points="6">6</input>
    <hr>
    <input type="submit" value="Submit" />
</form>

和javascript / jQuery(出于说明目的,使用Alert而不是console.log):

$(function () {
    $("#myForm").submit(function () {
        //This gets the checked input in group1
        var g1 = $("input[name='group1']:checked");
        alert("Group 1 \n Selected Value: " + g1.val() + " \n Selected Index: " + g1.index() + "\n Points: " + g1.data('points'));

        var totalPoints = 0;

        //This loops through all checked inputs
        $.each($("input:checked"), function () {
            totalPoints += $(this).data("points");
        });

        alert("Total points from all groups: " + totalPoints);

        return false; //remove if you want to submit
    });
});

===============>>#5 票数:0

您可以使用$ .index()

  $('input[type=checkbox]').click(function(){
    var idx = $(this).index();
    // do whatever with the index
  });

实际观看

在上面的代码(和给出的示例)中,将复选框分组在仅包含它们的容器中非常重要,因为index返回一个数字,该数字表示元素关于其容器的索引。

  ask by Arthur Chaykovski translate from so

未解决问题?本站智能推荐:

3回复

获取输入的“已检查”状态

我有这个基本的HTML结构: 我想在检查输入时发生这种情况: 将state =“on”添加到switch div。 在jquery中是否有任何选择器可用于获取特定输入的已检查状态? (页面上有多个)。 谢谢你的头脑风暴!
3回复

名称输入的索引

为什么这不起作用? 如何从输入中检查属性名称的索引? http://jsfiddle.net/UA2BN/ 我不必使用index()。 我可以使用其他功能,但我怎么检查这个?
2回复

选择器根据名称数组索引获取输入

我有一些输入,我想使用jQuery为它的name属性选择数组索引最高的那个 我可以使用以下代码实现此目的: 但是整个事情对我来说似乎有点致命了,如果有更简单的方法,我会在徘徊吗?
1回复

根据已检查的单选输入更改表单操作和文本输入名称

我可以通过以下代码获得帮助吗? 我正在尝试使用此功能将表单的操作设置为库目录搜索页面或wordpress搜索页面。 当前,单选按钮将选择/取消选择,仅搜索目录,而不搜索wordpress。 我最初是在网上找到用于选择表单的此代码,但现在必须使用单选按钮。 (有一些困难)。 此的P
3回复

无线电输入已检查

我有2个无线电输入。 A,B 我试图默认将A设为选定的收音机。 我想要以下行为:默认情况下,当A被隐藏时,B应该被选中。 这就是我尝试过的。 请看一下。 谢谢
2回复

使用按隐藏输入名称引用的jQuery通过索引获取隐藏数组输入的值

我有两个隐藏的数组输入,我正在尝试使用jQuery访问特定索引处的值。 我的密码 例如,使用jQuery我想要获取索引2中menu_name的值; 到目前为止,我在用jQuery做些什么 我越来越不确定
1回复

jQuery将已检查的输入文本传递给其他输入

我正在尝试将列表中用于选定值的列表项中的文本传递给表单提交时的隐藏字段值,但是我不确定选择和传递这些值(电子邮件)的最佳方法,以便使用每个表单提交。 提供与我交互的表单字段: 这是jQuery: 这是我想要实现的目标: 选中的复选框= name="memberTag[
1回复

检查所有子项隐藏输入的“已检查”值

回答 stackoverflow.com/a/18676076/2240163 您不能将隐藏的输入作为复选框,因此它不会具有选中的属性。 您可以使用type =“ checkbox”并使用display:none将其隐藏,如果您需要将其用作复选框,或者可以简单地使用带有0或1的隐
1回复

根据已检查的同级状态检查输入

我有一些JQuery代码可在输入复选框列表中导航,并检查那些不具有checked属性的checked 我想添加第二个测试,这样我就不会检查那些具有checked属性的兄弟姐妹的人 每个表格行都有两个复选框 如何仅检查未选中的checkbox-excluded元素以及未选中其
2回复

使用输入类获取已验证输入的父级

我有以下代码来验证它是否为空。 笔记: .req是我给出的类,用于验证它是否是必填字段 isNot +新数组(“”)表示该值不能为空 如果输入确实为空,$(e).css会将输入背景颜色更改为红色,否则(有效)它将只是白色 现在我的问题如下:如何将文本添加