[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как найти массивы
maximka787
Помогите ребят, найти сумму двух массивов, хотя бы в теории. Мне достаточно будет найти сумму каждого по отдельности. Нигде нет информации.
Вот код
var elems1 = document.getElementById('d[]');  //ТУТ НАВЕРНО НЕ ТАК
var elems2 = document.getElementById('f[]'); //ТУТ НАВЕРНО ТАК

for(var i=0; i<elems1.length; i++){
//сложение
}
for(var i=0; i<elems2.length; i++){
//сложение
}

<input type="text" id="d[1]" value="1">
<input
type="text" id="d[2]" value="1">
<input
type="text" id="f[1]" value="1">
<input
type="text" id="f[2]" value="1">
<input
type="text" id="d[3]" value="1">




Спустя 16 минут, 49 секунд (10.02.2011 - 10:37) Slays написал(а):
какую сумму тебе надо ?
<input type="text" id="d[1]" value="1"> + <input type="text" id="d[2]" value="1"> ??? 
user posted image
Или объединение ? Или сложение значений value ? Или ты просто не знаешь как собрать все элементы DOM в массив ?

Спустя 5 минут, 28 секунд (10.02.2011 - 10:43) maximka787 написал(а):
Надо найти сумму всех элементов массива d и всех элементов массива f, соединю как нибудь сам в итоговую сумму)

Спустя 1 минута, 46 секунд (10.02.2011 - 10:45) Slays написал(а):
дак сумму чего ? Значений value ? Или найти количество элементов ?

в любом случае как минимум не пытайся через getElementById получить массив, он возвращает строку, ссылку на объект

Спустя 1 минута, 59 секунд (10.02.2011 - 10:47) maximka787 написал(а):
Надо получить сумму значений value по каждому массиву. Мне предложили недавно хороший пример но он считает по одинаковому name, а это не правильно.

Спустя 11 минут, 31 секунда (10.02.2011 - 10:58) Michael написал(а):
document.getElementById('d[]');  //ТУТ НАВЕРНО НЕ ТАК

конечно не так, ищет же элемент с id="d[]", а такого и нет, у тебя есть id="d[1]", id="d[2]", ...

document.getElementById находит ОДИН єлемент

Спустя 10 минут, 41 секунда (10.02.2011 - 11:09) Snus написал(а):
maximka787
Тебе нужен аналог php-шной функции array_sum? Если да, то вот

Спустя 2 минуты, 17 секунд (10.02.2011 - 11:11) Slays написал(а):
написал небольшое извращение =)

 window.onload = function()
{
var arrInp = document.getElementsByTagName('input');
var d = 0, f = 0;

for(var i=1; i<=arrInp.length; i++){

if(!arrInp[i])
continue;

if(document.getElementById('d['+i+']'))
d += document.getElementById('d['+i+']').value*1;

if(document.getElementById('f['+i+']'))
f += document.getElementById('f['+i+']').value*1;
}

}

Спустя 19 минут, 40 секунд (10.02.2011 - 11:31) maximka787 написал(а):
Цитата (Slays @ 10.02.2011 - 08:11)
написал небольшое извращение =)

Ок спасибо, то что нужно, чуть переделаю и все гуд!


_____________
..Работает - не трогай!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.