Вы создаете правильный элемент UL (HTMLUListElement
), что отлично. Вы можете использовать это непосредственно простое добавление его к цели:
document.getElementById("list").appendChild(generateListFromArray(array));
Если цель уже содержит контент, который вы хотите заменить (а не добавлять), вы можете очистить целевой элемент первой :
var list = document.getElementById("list"); // Get the target element
list.innerHTML = ""; // Remove previous content
list.appendChild(generateListFromArray(array)); // Append your generated UL
Там просто нет никаких причин, вообще, чтобы преобразовать элемент, созданный для разметки первой (с помощью .innerHTML
или .outerHTML
на возвращаемое значение generateListFromArray
).
Еслиlist
также ul
и вы хотите заменить , вы можете сделать это с insertBefore
и removeChild
:
var list = document.getElementById("list"); // Get the target element
var parent = list.parentNode; // Get its parent
var newList = generateListFromArray(array); // Get the new one
parent.insertBefore(
newList, // Insert the new list...
list // ...before the old one
);
parent.removeChild(list); // Remove the old
newList.id = "list"; // Give the new list the ID the
// old one had
Вместо возврата HTML строку из функции. – Jai
Возвращение строки из функции и, наконец, это будет похоже, что document.getElementById («список») innerHTML = «
- List1
- List2
- List3
» –Было бы очень полезно знать, что 'ID =». list "' элемент. –