2013-05-21 114 views
1

我試圖創建一個textarea值的數組,然後通過它們循環。循環jQuery中的數組

這裏是我試圖得到這個工作在的jsfiddle:

http://jsfiddle.net/kxkHZ/1/

當我運行它,什麼都不會發生。

任何想法我做錯了什麼?

var textArray = []; 
$('[class=objectives]').each(function (i) { 
    textArray.push($(this).val()); 
}); 

for (var i = 0; i < textArray.length; i++) { 
    console.log(textArray[i].value); 
} 
+1

只要改變到'的console.log(textArray [I]);' –

回答

5

有一個在每一個元素沒有value屬性,你可以簡單地做:

for (var i = 0; i < textArray.length; i++) { 
    console.log(textArray[i]); 
} 

Working Demo - 注:jQuery的最初並未列入

+0

有一個很好的實踐來存儲陣列長度的變量,然後用它在for循環 – kaapa

+2

你的意思是:for(var i = 0,n = textArray.length; i mplungjan

+0

由於某種原因,它不顯示在我的螢火蟲控制檯,當我在jsfiddle中運行它時... – SkyeBoniwell

3

工作-->http://jsfiddle.net/kxkHZ/11/

for (var i = 0; i < textArray.length; i++) { 
    // textArray[i] itself is the value so textArray[i].value is incorrect 
    console.log(textArray[i]); 
} 

你忘了包括jQuery的 -

你應該得到的是沒有定義$錯誤。

+3

仍然無法正常工作。你結束四次向控制檯寫'未定義'。 –

+1

在我的瀏覽器(Chrome)中正常工作... – mplungjan

4

您正在將元素的值推入數組,您不需要再次調用value。剛剛訪問字符串本身:

console.log(textArray[i]);