我想提取下面输入元素的@name值。
<div style="style info">
<input type="checkbox" name="name1" onchange="doSomething;"/>
Mobile
<br/>
<input type="checkbox" name="name2" onchange="doSomething;"/>
Event
<br/>
</div>
在上面的例子中,我想提取与“Mobile”相关的名称(“name1”)。
我需要一个可以为我检索此信息的单行xpath。我试过了
//div[normalize-space(text())='Mobile']/preceding-sibling::input/@name
//div[normalize-space(text())='Mobile']/input/@name
//div[normalize-space(.)='Mobile']/preceding-sibling::input/name
在这里梳理档案之后还有其他一些猜测,但是我没有发现任何有用的东西(我对XML有点新,因为你无疑可以告诉我;抱歉,如果我的猜测看起来很随意)。
提前感谢您的回答,如果有任何澄清或更正我会帮助解决这个问题,请告诉我。非常感谢您的帮助!
注意:我不能选择XSLT
答案 0 :(得分:1)
您希望首先找到感兴趣的文本节点,而不是div。从那里,你可以尝试前往兄弟姐妹。
尝试:
//text()[normalize-space() = "Mobile"]/preceding-sibling::input/@name
答案 1 :(得分:1)
尝试
//div/input[normalize-space(following-sibling::text()[1])='Mobile']/@name