Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Создание динамического списка ID (https://javascript.ru/forum/css-html/33144-sozdanie-dinamicheskogo-spiska-id.html)

js_forever 12.11.2012 01:12

Создание динамического списка ID
 
Всем привет!
Прошу вашей помощи, т.к. знаний, чувствую, не хватает.
Задача состоит в следующем.
Есть страница, на которой динамически создается N-количество элементов input (значение N вводит пользователь на стартовой странице).
Как мне обратится в каждому из этих элементов по id ?!
Я пробовал сделать что-типа этого: (count передается в функцию, text - это часть поля id у элементов input)

var k;
for(k = 1; k < parseInt(Count) + 1; k++)
{
    var n = eval("text" + k);
    alert(n);
}


однако "проверочный" alert не вызывается, явный косяк в синтаксисе.

Можно ли как-нибудь сделать список переменных, которым будет присвоено value, введенное пользователем в эти динамически выведенные на экран поля input?


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

for(var i = 1; i < parseInt(testQuestionCount) + 1; i++)
        {
            document.write('<tr><td><div class="numbers">'+ i + '.</div></td>');
            document.write('<td align="left"><input class="questions" id="text' + i + '" type="text" value="" /></td>');
            document.write('<td><select class="answers" id="answ' + i + '"><option value="1" selected="selected">2</option><option value="2">3</option><option value="3">4</option><option value="4">5</option></select></td>');
            document.write('<td><select class="unique_answer" id="uniqansw' + i + '"><option value="1" selected="selected">----------</option><option value="2">Единственный ответ</option><option value="3">Несколько вариантов</option></select></td>');
            document.write('</td></tr>');
        }

Желательно только JS.

Baras441 30.11.2012 17:13

var count=10;
for(var i = 1; i < count; i++)
        {
            document.write('<tr><td><div class="numbers">'+ i + '.</div></td>');
            document.write('<td align="left"><input class="questions" id="text' + i + '" type="text" value="" /></td>');
            document.write('<td><select class="answers" id="answ' + i + '"><option value="1" selected="selected">2</option><option value="2">3</option><option value="3">4</option><option value="4">5</option></select></td>');
            document.write('<td><select class="unique_answer" id="uniqansw' + i + '"><option value="1" selected="selected">----------</option><option value="2">Единственный ответ</option><option value="3">Несколько вариантов</option></select></td>');
            document.write('</td></tr>');
        }
for(var k = 1; k < count + 1; k++)
{
    var n = "text" + k;
    console.log(document.getElementById(n));
}


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