2015-04-01 48 views
0

我知道Document.getElementsByClassname(String)在整个文档中获取特定类名的所有元素。有没有一种标准的方式来获取某个节点中的类名的所有元素?

我现在试图在文档的特定节点中获取这些元素。在org.w3c.dom.Element中,我只找到getElementsByTagname。我真的需要迭代所有这些元素并阅读类名,还是有更好的方法?

我试图找到一个使用Java的解决方案(可以与另一个库)。

非常感谢!

+1

没有我的意思是Java的。 Java中有一个标准的DOM库(org.w3c.dom。*),但它不包含我指出的这个方法。我想知道我在哪里可以找到它。 – tb189 2015-04-02 17:27:35

回答

-2

jQuery是更好的方法。

这将选择节点中具有“nodeToSearchName”标识的节点中具有“classNameToFind”类的所有节点。

$( “#nodeToSearchName”)。找到( “classNameToFind”)

+1

如果我只想使用Java,该怎么办? – tb189 2015-04-01 21:13:35

0

尽管你与org.w3c.dom.Document对象的工作,这应该藏汉工作。

我在Getting specific elements with XPath from an SVG with Batik中发现了一个使用xalan库的解决方案。唯一的区别是我最终使用XPathAPI而不是XPathEvaluator,因为batikorg.w3c.dom.xpath.XPathEvaluator实现不一致。

这是我写的代码的相关部分:

Element searchRoot= document.getRootElement(); 
NodeList nl = XPathAPI.selectNodeList(searchRoot, ".//*[@class=\"class_name\"]");