我使用alert来检查div是否有任何子控件:
alert(document.getElementById("MainContent_imgContainer").hasChildNodes());
并且即使MainContent_imgContainer div没有任何子控件,它也总是返回true,
请告诉我什么是确定div是否有子控件的更好方法..谢谢
答案 0 :(得分:2)
可能你的容器有一个空格,它被视为一个textNode。确保你的div真的是空的。
或使用其他机制,例如jQuery,只计算非textNodes
$("#MainContent_imgContainer").children().length; // 0 when empty
答案 1 :(得分:1)
请改用所有浏览器支持的.children.length
。 MDN Docs
alert(document.getElementById("MainContent_imgContainer").children.length > 0);
答案 2 :(得分:0)
检查选择器的.length
以查看它匹配的元素数量,在这种情况下:
if($("#divid").children().length) {
//child exists
}