有没有办法使用Javascript在DIV中找到LAST元素的ID?

时间:2011-08-31 16:10:27

标签: javascript html find append html-lists

我想我需要找到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,以便我可以在最后一个元素之后追加它?感谢。

3 个答案:

答案 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>";