我知道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