选择以相同名称JQuery开头和结尾的元素

时间:2013-11-12 10:32:07

标签: jquery

可能这已经回答了,但我找不到。

我需要为每张图片显示超过200-300张图像,其中包含3-6个文本字段, 我希望用户能够选择具有相同第二元素的所有图像。

示例:选择图像图像[487] [1],图像[488] [1],图像[489] [1],图像[某物] [1] ..子元素为“1”的所有元素。< / p>

<input name="image[487][1]" type="textfield" >
<input name="image[487][8]" type="textfield" >
<input name="image[487][9]" type="textfield" >
<input name="image[487][11]" type="textfield" >

<input name="image[488][1]" type="textfield" >
<input name="image[488][8]" type="textfield" >
<input name="image[488][9]" type="textfield" >
<input name="image[488][11]" type="textfield" >

我已经完成的是使用regEx和每个循环。但我相信还有更好的方法。

$('input[name^="images"]').each(function() {
      var regExp = /\[([^)]+)\]/;
      var matches = regExp.exec($(this).attr('name'));

  var numb = matches[1].substring(matches[1].indexOf('[')+1, matches[1].length);
      if(parseInt(numb)==1)
          // DO SOMETHING HERE

 });

谢谢,并建议我是否可以更改标题或其他内容,以便日后更容易搜索。

2 个答案:

答案 0 :(得分:5)

你可以尝试这个,以选择器

开头和结尾
$('input[name^="images"][name$="[1]"]')

答案 1 :(得分:1)

KISS =保持简单和娴熟 如果您的元素是动态生成的,并且您需要识别它们中的很多元素,为什么不生成类属性呢? RegEx解析效率低下,最好避免使用。

添加一个类属性以识别这些特定图像