2013-10-02 71 views
0

我有一堆輸入文本字段與emps_l具有不同的值。我想循環遍歷這個類的所有元素,並將這些值存儲到一個數組中! 貝婁是我做了什麼:如何獲取具有相同類別的所有元素的值

var emps = new Array();  
$.each(($(".emps_l").val()),function()({   
     emps.push($(".emps_l").val());   
}); 
console.log(emps); 

我完全失去了,任何幫助將不勝感激!

+0

大多數jQuery中getter函數僅作用於第一個匹配元素上(以便返回一個值)。執行'$(「。emps_l」).val()'返回具有'emps_l'類的DOM中第一個元素的值,而執行'$(「。emps_l」).val(1);'會用'emps_l'類設置每個元素的值爲1,然後返回該jQuery對象。 –

回答

1
var emps = []; // This is considered slightly faster than new array 

$('.emps_1').each(function(){ 
    emps.push(this.value); 
}); 

console.log(emps); 
+1

可以使用'this.value'而不是'$(this).val()'。節省您(不必要地)調用jQuery函數,並且鍵入更容易/更快速。 –

+0

@AnthonyGrist:好點 - 我會更新 –

4

可以使用.map()this.value沿創建陣列

var emps = $(".emps_l").map(function() { 
    return this.value 
}).get() 
+0

@downvoter我錯過了什麼 –

1

使用這樣的:

var emps = new Array();  
$.each(($(".emps_l:input").val()),function(index , item)({   
     emps.push($(item).val());   
}); 
console.log(emps); 
相關問題