我正在写一个Selenium测试用例.这是我用来匹配数据表中所有"修改"按钮的xpath表达式.
//img[@title='Modify']
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何通过索引访问匹配的节点集?我试过了
//img[@title='Modify'][i]
Run Code Online (Sandbox Code Playgroud)
和
//img[@title='Modify' and position() = i]
Run Code Online (Sandbox Code Playgroud)
但是都不起作用..我也试过XPath checker(一个firefox扩展).发现总共有13个匹配,然后我完全不知道如何选择其中一个.. 或者XPath是否支持指定选择不在同一父节点下的节点?
Dim*_*hev 178
这是一个FAQ:
//someName[3]
Run Code Online (Sandbox Code Playgroud)
意味着:someName文档中的所有元素,即someName父元素的第三 个子元素 - 可能有许多这样的元素.
你想要的正是第3个someName元素:
(//someName)[3]
Run Code Online (Sandbox Code Playgroud)
说明:[]优先级高于(优先级)//.//someName当您需要指定所选节点列表的第N个节点时,请记住始终将类型的表达式放在括号中.
Tom*_*lak 14
i在XPath中没有.
要么使用文字数字: //img[@title='Modify'][1]
或者动态构建表达式字符串:( '//img[@title='Modify']['+i+']'但请记住,动态XPath表达式在 XSLT中不起作用).
或者XPath是否支持指定的不在同一父节点下的节点选择?
是: (//img[@title='Modify'])[13]
这//img[@title='Modify'][i]意味着"任何<img>标题为'Modify'且名为的子元素<i>."
| 归档时间: |
|
| 查看次数: |
119442 次 |
| 最近记录: |