2014-05-06 24 views
1

如何通过输入名称指定从输入中获取所有值,仅在某些类中?按名称选择器,与我的类名称框中jQuery

例如,如果我试图从名为“album_id”所有输入取价值,我已经设置

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

和它的作品,但如果我想表明,采取一切投入,仅在盒带班“照片”,我试着写

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

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

和这种结构不起作用。但是,当我把名为“富”的所有类从类“foo_wrapper”块和我设置

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

并正确的工作方式。

那么,为什么不工作相同的建设?

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

+1

你能告诉你的HTML,并创建一个小提琴? –

+0

我试过同样的案例,它在我身边工作...你可以请分享JSfiddle这个 –

+0

是的,没问题,请稍等片刻。 :) – kxc

回答

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)而不是的值将返回当前输入的jQuery对象。

+0

谢谢,但不是,我没有,也不需要很多输入与名称'album_id',我明白,我需要进入循环的数组。 我只有一个输入名称'album_id',并点击按钮class'.alb_btn'我需要为名为'album_id'的这个输入设置一个新的值,从点击按钮的数据attr。和选择器中的问题,我想严格显示更改值只需要输入名称'album_id'只例如在类'.photo'中。 – kxc

+0

和问题只是在选择器中,只是我没有正确设置它。 例如,该构造'var test_val = $(“input [name ='album_id']”)。val ();'所有的工作,与不工作'var test_val = $(“。addPhoto”)。但如果我只是留下第一个例子,而没有严格地显示出我需要从哪个类获取价值的名称,未来我会遇到乘法输入问题名称为album_id – kxc

0

用途如下:

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

DEMO