Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I dynamically create an unordered list in JavaScript?

I have a global JavaScript array that contains some strings.

I want to create a dynamic list based on the strings in my JavaScript array. Similar to this:

<ul class='xbreadcrumbs' style='position:absolute; bottom:0px'>
    <li>
        <a href='#'>String 1</a>
    </li>
</ul>

How can I iterate over my array, and then create this list in JavaScript/jQuery?

like image 600
Sheehan Alam Avatar asked Oct 06 '11 15:10

Sheehan Alam


1 Answers

If you only need a flat array (i.e. not multi-dimensional and no arrays within the array), then you can do the following in plain JavaScript:

var strs = [ "String 1", "String 2", "String 3" ];
var list = document.createElement("ul");
for (var i in strs) {
  var anchor = document.createElement("a");
  anchor.href = "#";
  anchor.innerText = strs[i];

  var elem = document.createElement("li");
  elem.appendChild(anchor);
  list.appendChild(elem);
}

Then append list to whichever parent element in the body you desire.

like image 138
Jon Newmuis Avatar answered Nov 06 '22 17:11

Jon Newmuis