This function is run every time an item is added to an array. It simply creates a list item element, appends some text to that item, and then appends it to a list element (#requestList).
function UpdateListOnScreen(NewListItem){
var grabList = document.getElementById('requestList');
var text = ""+ GetCalendarName(NewListItem.calChoice) +" For "+ GetLessonSlot(NewListItem.lessonChoice) + " On " + GetDateInTextForm(NewListItem.date) + "";
var entry = document.createElement('li');
entry.id = list.length-1;
entry.className = "ItemNotChecked";
entry.appendChild(document.createTextNode(text));
grabList.appendChild(entry);
}
Something I'm struggling to figure out is how do I add a button element onto that list item? I want every list item to have its own button element, but can't seem to figure out how I append a button to the list item after appending the text to the list item.
Thanks.
This is an example how you can insert button :
var ul = document.getElementById("list");
var li = document.createElement("li");
li.appendChild(document.createTextNode("Four"));
var button = document.createElement("button");
button.innerHTML = "asdasd";
li.appendChild(button);
li.setAttribute("id","element4");
ul.appendChild(li);
alert(li.id);
<ul id="list"></ul>
This should do the trick:
function UpdateListOnScreen(NewListItem) {
var grabList = document.getElementById('requestList');
var text = "" + GetCalendarName(NewListItem.calChoice) + " For " + GetLessonSlot(NewListItem.lessonChoice) + " On " + GetDateInTextForm(NewListItem.date) + "";
var entry = document.createElement('li');
entry.id = list.length - 1;
entry.className = "ItemNotChecked";
entry.appendChild(document.createTextNode(text));
/*Add a button to each LI */
var button = document.createElement('button');
button.innerText = 'Click me!';
entry.appendChild(button);
grabList.appendChild(entry);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With