Hello. There is a code that adds new elements to the page:

<script> jQuery('.main').append("<div class='level' id='"+level+"'></div>"); // Добавляю обертку с уровнем /* Добавляем оберку и подкатегории */ jQuery('.row[data-parent="' + id + '"]').each(function(i) { var html = jQuery(this), catID = html.attr('id'), parentID = html.data('parent'), el = html.html(); jQuery( '.main .level#' + level ).append( "<div class='row sub' onclick='ASclick("+catID+")' id='"+catID+"' data-parent='"+parentID+"'>" + el + "</div>" ); }); </script> 

It works as it should. After adding I need to pull a couple of values. I do it like this:

 var lvl = jQuery('body .sub#' + id ).parent(); 

But the console tells me that there is no such element in the HOUSE.

Is there any solution? Thanks in advance to everyone who responds.

HTML:

 <div class="main"> <div class="level" id="0"><div class="row" onclick="ASclick(57)" id="57" data-parent="55"> <div class="column" id="57" data-parent="55"> <div class="name">Чемоданы</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" onclick="ASclick(56)" id="56" data-parent="55"> <div class="column" id="56" data-parent="55"> <div class="name">Лодки</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" onclick="ASclick(58)" id="58" data-parent="55"> <div class="column" id="58" data-parent="55"> <div class="name">Лифоны</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(61)" id="61" data-parent="58"> <div class="column activeCat" id="61" data-parent="58"> <div class="name">Шанель</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(63)" id="63" data-parent="61"> <div class="column" id="63" data-parent="61"> <div class="name">Розовый</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(62)" id="62" data-parent="61"> <div class="column" id="62" data-parent="61"> <div class="name">Красный</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(60)" id="60" data-parent="58"> <div class="column" id="60" data-parent="58"> <div class="name">Луи Ви Тон</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(64)" id="64" data-parent="60"> <div class="column" id="64" data-parent="60"> <div class="name">Серый</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(59)" id="59" data-parent="58"> <div class="column" id="59" data-parent="58"> <div class="name">Дольче Га Банна</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" style="display: none;" onclick="ASclick(65)" id="65" data-parent="59"> <div class="column" id="65" data-parent="59"> <div class="name">Черный</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div></div> <div class="level" id="1"><div class="row" onclick="ASclick(61)" id="61" data-parent="58"> <div class="column activeCat" id="61" data-parent="58"> <div class="name">Шанель</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" onclick="ASclick(60)" id="60" data-parent="58"> <div class="column" id="60" data-parent="58"> <div class="name">Луи Ви Тон</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" onclick="ASclick(59)" id="59" data-parent="58"> <div class="column" id="59" data-parent="58"> <div class="name">Дольче Га Банна</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div></div><div class="level" id="2"><div class="row" onclick="ASclick(63)" id="63" data-parent="61"> <div class="column" id="63" data-parent="61"> <div class="name">Розовый</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div><div class="row" onclick="ASclick(62)" id="62" data-parent="61"> <div class="column" id="62" data-parent="61"> <div class="name">Красный</div> <img class="image" src="http://www.ljplus.ru/img4/w/w/www34/DSCF2093.jpg"> </div> </div> </div> </div> 
  • Please add a html representation of the house that will be the result of the script. - Arnial
  • @Arnial Added by - Slavik Okara
  • one
    what is the level and id, where they come from - L. Vadim
  • @ L.Vadim level of nesting category, idi categories in the database. - Slavik Okara
  • one
    @SlavikOkara you create elements with duplicate id in DOM - this contradicts the html specification and will not work. - Igor

1 answer 1

The problem is solved by replacing the id attribute with a data-id.

  • really solved ??? and unless there is no need to delegate? - Sergey V.