Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   appendChild убивает добавленный элемент (https://javascript.ru/forum/misc/72130-appendchild-ubivaet-dobavlennyjj-ehlement.html)

kot_k_k 10.01.2018 17:59

appendChild убивает добавленный элемент
 
Добрый день.

есть код
<div id='packageList'>
 <a class="actions__link" href="#" onclick="add_div()" title="Отправить">Добавить уровень</a>  
<div>
тут кучка всего
</div>
<div id='newDiv_0'>
это мой див который надо клонировать
</div>
</div>


$(document).ready(function()
            {
               
                toClone = document.getElementById('newDiv_0');
                clonedNode = toClone.cloneNode(true);
}
function add_div()
            {
                    insertPoint = document.getElementById('packageList');
                    clonedNode.id='newDiv_'+i; 
                    insertPoint.appendChild(clonedNode);
                    i++;
                }
            }


суть - при загрузке создаю копию div.
после чего жамакая на ссылке хочу добавить клонированный элемент в div с id = packageList.

первый раз срабатывает.
второй раз вместо добавления - убивает только что добавленный div.
т.е. первый раз получаю - все верно
<div id='packageList'>
 <a class="actions__link" href="#" onclick="add_div()" title="Отправить">Добавить уровень</a>  
<div>
тут кучка всего
</div>
<div id='newDiv_0'>
это мой див который надо клонировать
</div>
<div id='newDiv_1'>
это мой див который надо клонировать
</div>
</div>


а второй раз убивает div с id=newDiv_1
вот так:

<div id='packageList'>
 <a class="actions__link" href="#" onclick="add_div()" title="Отправить">Добавить уровень</a>  
<div>
тут кучка всего
</div>
<div id='newDiv_0'>
это мой див который надо клонировать
</div>
<div id='newDiv_2'>
это мой див который надо клонировать
</div>
</div>


пробовали и через jquery - результат одинаков - только что созданный элемент убивает предыдущий.

помогите - где я туплю.

Dilettante_Pro 10.01.2018 18:12

kot_k_k,
Просто вы меняете тот же самый клон.
Надо делать новый.

kot_k_k 11.01.2018 12:20

С П А С И Б О!!!!

блин так все оказалось просто.


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