我知道Document.getElementsByClassname(String)
在整个文档中获取特定类名的所有元素。有没有一种标准的方式来获取某个节点中的类名的所有元素?
我现在试图在文档的特定节点中获取这些元素。在org.w3c.dom.Element
中,我只找到getElementsByTagname
。我真的需要迭代所有这些元素并阅读类名,还是有更好的方法?
我试图找到一个使用Java的解决方案(可以与另一个库)。
非常感谢!
我知道Document.getElementsByClassname(String)
在整个文档中获取特定类名的所有元素。有没有一种标准的方式来获取某个节点中的类名的所有元素?
我现在试图在文档的特定节点中获取这些元素。在org.w3c.dom.Element
中,我只找到getElementsByTagname
。我真的需要迭代所有这些元素并阅读类名,还是有更好的方法?
我试图找到一个使用Java的解决方案(可以与另一个库)。
非常感谢!
我结束了使用JSoup,其中包含了我所需要的方法。
http://jsoup.org/apidocs/org/jsoup/nodes/Element.html#getElementsByClass%28java.lang.String%29
jQuery是更好的方法。
这将选择节点中具有“nodeToSearchName”标识的节点中具有“classNameToFind”类的所有节点。
$( “#nodeToSearchName”)。找到( “classNameToFind”)
如果我只想使用Java,该怎么办? – tb189 2015-04-01 21:13:35
尽管你与org.w3c.dom.Document
对象的工作,这应该藏汉工作。
我在Getting specific elements with XPath from an SVG with Batik中发现了一个使用xalan
库的解决方案。唯一的区别是我最终使用XPathAPI
而不是XPathEvaluator
,因为batik
与org.w3c.dom.xpath.XPathEvaluator
实现不一致。
这是我写的代码的相关部分:
Element searchRoot= document.getRootElement();
NodeList nl = XPathAPI.selectNodeList(searchRoot, ".//*[@class=\"class_name\"]");
没有我的意思是Java的。 Java中有一个标准的DOM库(org.w3c.dom。*),但它不包含我指出的这个方法。我想知道我在哪里可以找到它。 – tb189 2015-04-02 17:27:35