从JQuery中的输入数组中获取正确的索引

Wic*_*wok 12 html javascript jquery

如何使用JQuery从具有不规则编号索引的一组输入元素中获取所选输入的正确索引?JQuery的"索引"函数总是返回一个从0开始的值,而不是我使用的索引.我的代码如下:

JQuery的:

$("input[name^=myboxes]").click(function() {
        var element_id = $("input[name^=myboxes]").index(this);
        alert(element_id); //will alert 0, 1, or 2 instead of 3, 8, or 10
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<input type="checkbox" id="myboxes[3]" name="myboxes[3]" value="CHECKED"  >
<input type="checkbox" id="myboxes[8]" name="myboxes[8]" value="CHECKED"  >
<input type="checkbox" id="myboxes[10]" name="myboxes[10]" value="CHECKED" CHECKED >
Run Code Online (Sandbox Code Playgroud)

谢谢!

Nic*_*rdi 7

以下是一直对我有用的东西.

JQuery的:

$("input[name^=myboxes]").click(function() {
        var element_id = $(this).attr("meta:index");
        alert(element_id);
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<input type="checkbox" id="myboxes[3]" name="myboxes[3]" meta:index="3" value="CHECKED"  >
<input type="checkbox" id="myboxes[8]" name="myboxes[8]" meta:index="8" value="CHECKED"  >
<input type="checkbox" id="myboxes[10]" name="myboxes[10]" meta:index="10" value="CHECKED" CHECKED >
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.


Bil*_*per 7

所选答案在语法方面存在一些问题:

$("input[name^=myboxes]").click(function() {
    var element_id = $(this).attr('id');
    //the initial starting point of the substring is based on "myboxes["
    var ix = element_id.substring(8,element_id.length - 1);
    alert(ix);
});
Run Code Online (Sandbox Code Playgroud)


Jay*_*Tee 5

您的ID的值没有"index"属性.这只是一个字符串.

一个建议:解析id字符串以获取您的值:

$("input[name^=myboxes]").click(function() {
    var element_id = $(this).attr('id');
    //the initial starting point of the substring is based on "myboxes["
    var ix = element_id.substring(8,element_id.length - 1)
    alert(ix);
});
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助