简体   繁体   中英

Selecting an element created using document.createElement jquery/javascript

I am creating a number of div and ul elements using document.createElement. In a case, when I am creating these elements I need to take reference of one of those elements that I created above and assign it as the parent to element that's next in line to be created.

I have the id (eg "idoftheelement") of the created element but when I do

    $('#idoftheelement') 

I don't get the element.

Is there a possibility to get the element. If yes how ?

Edit:

Below is html structure I am trying to generate based on a JSON input data. Every element in the JSON array could have a child array of elements. All the elements will have the same markup and the difference is only in where they are getting placed. I have to construct this in a recursive way ie for every JSON element check if child elements(and the child elements could also contain child elements) are present, if yes then i should append these child elements to corresponding parent thread block. This is why I need to know if there is a direct way to get the reference of parent element that is in context to the current element so that It can be appended.

<div id="comment-12345">
<div id="threads-block-12345"
    <ul id="thread-12345">
        <li id="thread-item-12346">
            <div id="comment-12346">
                <div id="threads-block-12346"
                    <ul id="thread-12346">
                        <li id="thread-item-12347">
                            <!--keeps growing if there till all the children are processed-->
                        </li>
                    </ul>
                </div>
            </div>
        </li>
        <li>
            <div id="comment-xyz">
                <div id="threads-block-xyz"
                    <ul id="thread-xyz">
                        <li id="thread-item-xyz">
                            <!--keeps growing if there till all the children are processed-->
                        </li>
                    </ul>
                </div>
            </div>              
        </li>
    </ul>
</div>

The code $('#idoftheelement') tells me you are using jQuery, so you shouldn't be using document.createElement . What you need to do is create the element using jQuery and reference it by that variable. For example:

var $node = $("<div id='" + id + "'>")

$node.append( ... new elements ... )

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM