jOOX可用于使用以下内容查找元素的xPath:
Element element = (Element) someNode;
String xPath = $(element).xpath();
我可以为属性执行相同的操作吗?我试过这个:
Attr attr = (Attr) someAttributeNode;
String xPath = $(attr).xpath();
但它返回null。
编辑:我已经设法通过从节点的xPath和属性的名称创建自己的xPath来解决它,但似乎我不应该这样做。这是完整的工作:
Element element = (Element) someNode;
String elementXpath = $(element).xpath();
String attributeName = someAttributeNode.getNodeName();
String attributeXpath = elementXpath + "/@" + attributeName; // <-- work around
答案 0 :(得分:1)
在有人给我一个更好的答案之前,我会用自己的工作:
我已经设法通过从节点的xPath和属性的名称创建我自己的xPath来解决它,但似乎我不应该这样做。这是完整的工作:
Element element = (Element) someNode;
String elementXpath = $(element).xpath();
String attributeName = someAttributeNode.getNodeName();
String attributeXpath = elementXpath + "/@" + attributeName; // <-- work around