Re[2]: jQuery – Javascript нового поколения
От: Блудов Павел Россия  
Дата: 10.07.07 02:11
Оценка: 2 (1) +1
Здравствуйте, Tomahawk, Вы писали:

T>Подскажите пожалуйста, как используя jQuery динамически создать несколько элементов (скажем текстбоксов) и затем к ним обращаться как к массиву?


Во-первых,
$("#textBox")[1].val("two");
есть бессмыслица, т.к. "#" подразумевает вызов getElementById, который всегда возвращает один элемент.
Вообще, наличие нескольких элементов с одинаковым ID на одном уровне иерархии никакого смысла не имеет. Здесь нужно использовать css:
$("<input class='textBox' type='text'/>" +
  "<input class='textBox' type='text'/>" +
  "<input class='textBox' type='text'/>");

alert($(".textBox").length); // 3 штуки.


Для того, чтобы обратиться к n-ному элементу, нужно использовать функцию nth или eq. Окончательный результат будет примерно таким:

$("<input class='textBox' type='text'/>" +
  "<input class='textBox' type='text'/>" +
  "<input class='textBox' type='text'/>").insertAfter("#something");

$(".textBox:first").val("one");
$(".textBox:eq(1)").val("two");
$(".textBox:nth(2)").val("three");
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.