Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Динамический список из DIV`ов и INPUT`ов (https://javascript.ru/forum/jquery/17927-dinamicheskijj-spisok-iz-div%60ov-i-input%60ov.html)

Andrew_li 09.06.2011 11:16

Динамический список из DIV`ов и INPUT`ов
 
Добрый день, проблема заключается в следующем..
есть форма и динамический список:
в форму <input id=chislo> вводится число..
динамический список представляет собой динамическую таблицу,
где <input hidden id=koef value="данные из базы" /> и <div id=result> который показывает результат.
function Formula(){
var inputChislo = $('input#chislo').val();
var inputKoef = $('input#koef').val();	
rec = inputChislo * inputKoef;
$('div#result').html(rec);
}

В результате картина такая, считает только первый коэффициент и передает результат на все дивы.
Понимаю, что нужен цикл, тока не могу его придумать..
И как сделать, чтобы он выводил результат на свой див?
Или может есть какой другой способ? Я пока новичек:-?

ksa 09.06.2011 11:36

Andrew_li, присвой скрытым инпутам одинаковое значение в name, а потом в цикле пройдись по всем элементам

document.getElementsByName('нужное_имя')

Andrew_li 09.06.2011 11:47

ksa,
Спасибо за быстрый ответ.
А можно немного поподробнее:)
У меня скрытый инпут один, но при создании списка их немерено много, если я name присвою имя, то получается тоже что и с id..
А цикл какой взять, for вроде не подходит, а while не могу придумать условие..:blink:

ksa 09.06.2011 13:13

Цитата:

Сообщение от Andrew_li
если я name присвою имя, то получается тоже что и с id..

Отнють!
Имя может повторяться у сходных элементов (для того оно и придумано), а вот ИД должно быть уникальным.

Цитата:

Сообщение от Andrew_li
А цикл какой взять, for вроде не подходит

Он запросто подойдёт. :D

Цитата:

Сообщение от Andrew_li
а while не могу придумать условие.

Это печально...

Andrew_li 09.06.2011 13:47

Спасибо, буду разбираться..

Andrew_li 09.06.2011 15:23

Сделал с помощью each() алерт выдет правельные ответы а в дивы не передает..
function Chislo()
{
var inputChislo = $('input#chis').val();
var inputKoef = $('input#koef');
$(inputKoef).each(function(index) {
var koeff = $(this).val();
var rec = inputChislo * koeff;
$('div.result').html(rec);
alert (rec);
});
}


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