2013-05-21 4 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

Существует хорошая практика для хранения длины массива в переменной, а затем использовать его в цикл – kaapa

+2

Вы имеете в виду 'for (var i = 0, n = textArray.length; i mplungjan

+0

по какой-то причине он не появляется в моей консоли firebug, когда я запускаю его в 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

Все еще не работает. Вы завершаете запись «undefined» на консоль 4 раза. –

+1

отлично работает в моем браузере (Chrome) ... – mplungjan

4

Вы нажимаете на значение элемента в массиве, вам не нужно снова называть value. Просто доступ к самой строке:

console.log(textArray[i]);