我知道在DOM中,Document对象的方法是 getElementsByTagName()。
为什么没有在任何特定节点上定义此操作?假设我有一个Node对象,我想按名称找到该Node的特定子节点。我是否真的必须实现自己的方法来遍历所有孩子,直到找到具有该名称的孩子? (我没有使用XPath。)对于一项简单的任务,听起来很多工作。感谢
答案 0 :(得分:0)
我测试了代码,得到了预期的结果。所以我认为你做错了。
示例:http://tinkerbin.com/uAgGGIM4(单击运行以运行代码)
答案 1 :(得分:0)
我认为你在谈论JAVA。如果是Javascript,请记住这个答案(并请相应地标记您的问题)。在这种情况下,getElementsByTagName仅适用于“Element”对象,而不适用于“Node”对象(所有元素都是节点,但所有节点都不是元素)。
http://docs.oracle.com/javase/6/docs/api/org/w3c/dom/Element.html
如果您确定您的对象是元素,则可以在调用方法之前进行转换
Element eElement = (Element) nNode;
您之前可能需要http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html#isAssignableFrom%28java.lang.Class%29。