按名称选择选择器,在我的类名jQuery的框中

时间:2014-05-06 06:40:10

标签: jquery dom jquery-selectors attributes

如何指定通过输入名称从输入中获取所有值,仅在某个类中?

例如,如果我尝试使用名称' album_id'从所有输入中获取值,我已设置

$("input[name='album_id']").val()

并且它有效,但是如果我想要显示所有输入,只有在类'照片'我试着写

$(".photo").find("input[name='album_id']").val()

$(".photo > input[name='album_id']").val()

这种结构不起作用。但顺便说一句,当我把所有课程都命名为“foo'来自街区的课程' foo_wrapper'我设置了

$('.addPhoto_wrapper').find('.alb_btn')

它正常工作。

那么为什么不做同样的建设呢?

小提琴示例: http://jsfiddle.net/V2e3r/

2 个答案:

答案 0 :(得分:0)

问题是您查询所有输入及其选择器的方式。让我们说代码如下:

<div class="photo">
   <input type="text" name='album_id' value="1"/>
   <input type="text" name='album_id' value="2"/>
   <input type="text" name='album_id' value="3"/>
</div>
<input type="text" name='album_id' value="4"/>

然后选择这些输入的方式是这样的:

var inputCollection = $('.photo input[name="album_id"]');
$.each(inputCollection, function(key, value){
    console.log(value);
});

演示:http://jsfiddle.net/a7LqP/ 我希望它是你的开始。

编辑:我忘了提及 - 在循环遍历集合中的所有输入时,引用$(this)而不是 value 将返回当前输入的jQuery对象。

答案 1 :(得分:0)

使用如下:

  var inputCollection = $('.photo').find($('input[name="album_id"]'));
  $.each(inputCollection, function(key, value){
    console.log(value);
  });

DEMO