我使用 alert 来检查 div 是否有任何子控件:
alert(document.getElementById("MainContent_imgContainer").hasChildNodes());
即使 MainContent_imgContainer div没有任何子控件,这也总是返回true,
请告诉我确定 div 是否有子控件的更好方法是什么。谢谢
我使用 alert 来检查 div 是否有任何子控件:
alert(document.getElementById("MainContent_imgContainer").hasChildNodes());
即使 MainContent_imgContainer div没有任何子控件,这也总是返回true,
请告诉我确定 div 是否有子控件的更好方法是什么。谢谢
可能你的容器有一个空间,它算作一个文本节点。确保你的 div 真的是空的。
或者使用另一种机制,例如 jQuery,只计算非文本节点
$("#MainContent_imgContainer").children().length; // 0 when empty
改用.children.length
所有浏览器都支持的。MDN 文档
alert(document.getElementById("MainContent_imgContainer").children.length > 0);
检查.length
选择器的 以查看它匹配了多少个元素,在这种情况下:
if($("#divid").children().length) {
//child exists
}