Reputation: 1353
I have an array of objects:
I have a div:
<div class="col-lg-12" id="list-puntate">
<!-- Insert my list here -->
</div>
JS
var listDiv = document.getElementById('list-puntate');
var ul = document.createElement('ul');
ul.appendChild(listDiv);
for(var i = 0; i < data.list.length; ++i) {
var li = document.createElement('li');
li.appendChild(data.list[i].puntata);
ul.appendChild(li);
}
I would like to have a result like this:
<div class="col-lg-12" id="list-puntate">
<ul>
<li>values of data.list[i].puntata</li>
<li>...</li>
</ul>
</div>
Upvotes: 1
Views: 16098
Reputation: 125
Try this
var listDiv = document.getElementById('list-puntate');
var ul=document.createElement('ul');
listDiv.appendChild(ul);
for (var i = 0; i < data.list.length; ++i) {
var li=document.createElement('li');
var textnode = document.createTextNode(data.list[i].puntata);
li.appendChild(textnode);
ul.appendChild(li);
}
Upvotes: 1
Reputation: 2245
You should do as follows:
var listDiv = document.getElementById('list-puntate');
var ul=document.createElement('ul');
for (var i = 0; i < data.list.length; ++i) {
var li=document.createElement('li');
li.innerHTML = data.list[i].puntata; // Use innerHTML to set the text
ul.appendChild(li);
}
listDiv.appendChild(ul); // Note here
Upvotes: 2