jQuery - 选择具有数组名称的所有输入

时间:2014-03-21 12:15:32

标签: javascript jquery html

我有很多输入字段,如:

<input type="hidden" value="" name="participants[1][canceled]">
<input type="hidden" value="" name="participants[2][canceled]">
<input type="hidden" value="" name="participants[3][canceled]">

我正在寻找一个jQuery选择器,它给了我所有这些项目。我不想使用循环。我更喜欢这样的东西:

jQuery('[name="participants[*][canceled]"]') // actually dont work

这可能吗?

谢谢

编辑:感谢大家

$(':hidden[name^="participants["][name$="][canceled]"]');

我的解决方案是否像魅力一样。 TY

6 个答案:

答案 0 :(得分:2)

尝试在您的上下文中使用attribute starts with selector

jQuery('[name^="participants"]')

答案 1 :(得分:1)

如果您只想要数组name,那么您可以使用participants

<强> Live Demo

jQuery('[name*=participants]')

答案 2 :(得分:1)

确切地说,这是正确的方法:

$(':hidden[name^="participants["][name$="][canceled]"]');

或者如果您只需匹配数字:

$(':hidden').filter(function() {
    return /^participants\[\d+\]\[canceled\]$/.test(this.name);
});

DEMO: http://jsfiddle.net/qbgAL/

答案 3 :(得分:0)

我会使用类似$("input:hidden[name^='participants']")

的内容

答案 4 :(得分:0)

试试这个:Refrence

$('[name ="participants"][name $="[canceled]"]')

答案 5 :(得分:0)

试试这个:

jQuery('[name^="participants"][name$="[canceled]"]')