Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Получить массив значений (https://javascript.ru/forum/misc/38957-poluchit-massiv-znachenijj.html)

MadChild 10.06.2013 12:25

Получить массив значений
 
Всем привет. У меня такая проблема:
Есть страница, на ней расположено несколько блоков(от 1 до 20)
В каждом блоке есть input, класс input'ов одинаковый(можно сделать разный)
Надо с помощью скрипта получить значения из каждого инпута, проблема в том что инпутов на странице может быть разное значение...
Вот не знаю как это сделать :(((

Есть конечно вариант: подсчитать количество блоков и пробежаться в цикле по инпутам(классы инпутов сделать типа input1, input2 и т.д.), но блин не могу получить количество дивов в общем блоке

dmitriymar 10.06.2013 12:29

Цитата:

Сообщение от MadChild
но блин не могу получить количество дивов в общем блоке

http://learn.javascript.ru/searching-elements-dom


http://javascript.ru/forum/misc/3706...-otvetili.html пункт 2

tsigel 10.06.2013 12:30

var array = []
$('.input1').each(function() {
  array.push(this.value);
});

Для работы скрипта необходимо подключить jQuery

Hekumok 10.06.2013 22:47

<div><input class = "input" value = "1"></div>
<div><input class = "input" value = "2"></div>
<div><input class = "input" value = "3"></div>
<script>
var array = Array.prototype.map.call(document.querySelectorAll("div > .input"), function(el) {
  return el.value ;
}) ;
alert(array.join("\n")) ;
</script>

jahman 10.06.2013 23:25

<div><input class = "input" value = "1"></div>
<div><input class = "input" value = "2"></div>
<div><input class = "input" value = "3"></div>

<script>
var arr = document.getElementsByClassName('input'),
len = arr.length,
data = [];

for (var i=0; i < len; i++){

  data.push(arr[i].value);
  
}

alert("Inputs: "+len+'\n'+data);
</script>


вот тут сравнение есть наглядное
http://jsperf.com/getelementsbyclass...selectorall/18


Часовой пояс GMT +3, время: 22:41.