我想我需要找到div中最后一个元素的id,以便我可以在使用javascript后附加一个ul元素。这样做的原因是我的div中的现有/最后一个ul是动态生成的,所以它的id可以是任何东西。
我尝试使用以下代码将元素附加到div容器,期望它将它放在最后..
var container = document.getElementById("container");
var newUL = document.createElement("ul");
container.appendChild(newUL);
newUL.innerHTML = 'Hello';
但是出于某种原因,这会将新的ul添加到我的div容器之外。有谁知道为什么会这样?还有如何找到最后一个元素的id,以便我可以在最后一个元素之后追加它?感谢。
答案 0 :(得分:2)
最简单的方法是依靠 jQuery 等Javascript框架来解决此问题。
jQuery允许您使用这个简单的代码来回答您的情况:
$('#container').append(
$('<ul></ul>').text('Hello')
);
编辑:考虑到arnaud576875的评论。
答案 1 :(得分:2)
container.lastElementChild.id
但我认为你需要找到真正的问题。 UL不能包含文本。它可能只含有锂元素。
答案 2 :(得分:1)
您正在将ul
元素的innerHTML设置为简单字符串:'Hello'
;这违反了规则。也许更好的测试是添加一些li
元素:
newUl.innerHTML = "<li>One</li><li>Two</li>";