how to add new <li> to <ul> onclick with javascript how to add new <li> to <ul> onclick with javascript javascript javascript

how to add new <li> to <ul> onclick with javascript


You have not appended your li as a child to your ul element

Try this

function function1() {  var ul = document.getElementById("list");  var li = document.createElement("li");  li.appendChild(document.createTextNode("Four"));  ul.appendChild(li);}

If you need to set the id , you can do so by

li.setAttribute("id", "element4");

Which turns the function into

function function1() {  var ul = document.getElementById("list");  var li = document.createElement("li");  li.appendChild(document.createTextNode("Four"));  li.setAttribute("id", "element4"); // added line  ul.appendChild(li);  alert(li.id);}


You were almost there:

You just need to append the li to ul and voila!

So just add

ul.appendChild(li);

to the end of your function so the end function will be like this:

function function1() {  var ul = document.getElementById("list");  var li = document.createElement("li");  li.appendChild(document.createTextNode("Element 4"));  ul.appendChild(li);}


First you have to create a li(with id and value as you required) then add it to your ul.

Javascript ::

addAnother = function() {    var ul = document.getElementById("list");    var li = document.createElement("li");    var children = ul.children.length + 1    li.setAttribute("id", "element"+children)    li.appendChild(document.createTextNode("Element "+children));    ul.appendChild(li)}

Check this example that add li element to ul.