Обращение к обектам jQuery - проблема с доступом.
Доброго времени суток всем. Возник вопрос, очень расчитываю на подсказку.
Есть такой вот Ul
<ul id='ul'>
<li id='li1' class='someclass'>li1</li>
<li id='li2' class='someclass'>li2</li>
<li id='li3' class='someclass'>li3</li>
</ul>
<a href="javascript:" id='add'>add</a>
<a href="javascript:" id="get">get</a>
<script>
$(document).ready(function(){
$('#add').click(function(){
$('#ul').append('<li id='li4' class='someclass'>li4</li>
});
$('#get').click(function(){
$('.someclass').each(function(){
alert(this.id);
});
});
});
</script>
Скрипт я схематично написал, у меня аналогичный, смысл тот же, только с инкрементацией при добавлении. Так вот. Добавим элемент LI и потом вызовем GET. В результате мы получим алерты только для первых трех элементов. А новые игнорируются. В общем-то это и понятно. На момент генерации документа новых элементов не было, он их и не видит. Так вот вопрос: как мне добавить новые элементы в объект jQuery чтобы при вызове each считались все 4 элемента? Я пробовал написать свою функцию, в которой при добавлении переопределялся класс someClass. Но в этом случае в each выводился только новый элемент, а старые в игнор. |
Во-первых, в 12 строке не закрыт append. Во-вторых, там же не закрыта кавычка. В-третьих, добавляемый li должен быть заключен в двойные кавычки, раз уж для аттрибутов используются одинарные. В-четвертых, все добавляемые элементы имеют один ID. Ну, это так, из основного.
|
| Часовой пояс GMT +3, время: 21:10. |