2014-05-06 392 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