2013-05-21 73 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]);