2014-04-23 68 views
0

形象我想点击图片<img> w.r.t在td标签中提到的“TM100”。请任何人都可以给我XPath。如何找到XPath来点击具有相同的名称

我在选择图像时遇到问题。因为所有图像都具有相同的xpath。

<tr> 
<td> 
<div id='xxx' class='avatar_standalone' ...> 
<div class ='yyy'> 
<div class ='zzz'> 
<a oncontextmenu="return false" href="javascript:void(0)" onclick="xxx('MINE|XX0172', '2');> 
<img class="newassetIcon assetIcon linkable" src="https://xxxx/servlet/servlet.ImageServer?id=015d00000020ZaWAAU&oid=00Dd0000000eu33&lastMod=1377179945000"/> 
</a> 
<span class="imgData" style="display: none;">MINE|XX0172</span> 
</div> 
</div> 
</div> 
</td> 
<td style="border: 1px solid rgb(211, 211, 211);">XX0172</td> 
<td style="border: 1px solid rgb(211, 211, 211); text-align: center;">6073.7</td> 
<td style="border: 1px solid rgb(211, 211, 211);">TM2</td> 
</tr> 

<tr> 
<td> 
<div id='xxx' class='avatar_standalone' ...> 
<div class ='yyy'> 
<div class ='zzz'> 
<a oncontextmenu="return false" href="javascript:void(0)" onclick="xxx('MINE|XX0172', '2');> 
<img class="newassetIcon assetIcon linkable" src="https://xxxx/servlet/servlet.ImageServer?id=015d00000020ZaWAAU&oid=00Dd0000000eu33&lastMod=1377179945000"/> 
</a> 
<span class="imgData" style="display: none;">MINE|XX0172</span> 
</div> 
</div> 
</div> 
</td> 
<td style="border: 1px solid rgb(211, 211, 211);">XX0172</td> 
<td style="border: 1px solid rgb(211, 211, 211); text-align: center;">1073.7</td> 
<td style="border: 1px solid rgb(211, 211, 211);">TM3</td> 
</tr> 

<tr> 
<td> 
<div id='xxx' class='avatar_standalone' ...> 
<div class ='yyy'> 
<div class ='zzz'> 
<a oncontextmenu="return false" href="javascript:void(0)" onclick="xxx('MINE|XX0172', '2');> 
<img class="newassetIcon assetIcon linkable" src="https://xxxx/servlet/servlet.ImageServer?id=015d00000020ZaWAAU&oid=00Dd0000000eu33&lastMod=1377179945000"/> 
</a> 
<span class="imgData" style="display: none;">MINE|XX0172</span> 
</div> 
</div> 
</div> 
</td> 
<td style="border: 1px solid rgb(211, 211, 211);">XX0172</td> 
<td style="border: 1px solid rgb(211, 211, 211); text-align: center;">8073.7</td> 
<td style="border: 1px solid rgb(211, 211, 211);">TM100</td> 
</tr> 

回答

0

请检查这一项,可能这会为你工作:

//tr[descendant::td[contains(text(),'TM100')]]//img[@class='newassetIcon assetIcon linkable'] 

我已经测试使用这个上面的代码:

//tr[descendant::td[contains(text(),'TM100')]]//td[contains(text(),'XX0172')] 
+0

谢谢..其工作 – Thyagu

0

如果你想获得img元素,如果你想点击你可能想选择a的图像,你可以使用下面的XPath

//tr[td = 'TM100']/div[@id = 'xxx']/div[@class = 'yyy']/div[@class = 'zzz']/a/img 

,所以以下工作:

//tr[td = 'TM100']/div[@id = 'xxx']/div[@class = 'yyy']/div[@class = 'zzz']/a 
+0

谢谢您的回答。但我得到的错误是:org.openqa.selenium.NoSuchElementException: – Thyagu

+0

如何验证XPath是正确与否的Chrome浏览器?有没有可用的工具? – Thyagu

+0

@Thyagu:[评估和验证在Chrome开发者工具的XPath/CSS选择](http://yizeng.me/2014/03/23/evaluate-and-validate-xpath-css-selectors-in-chrome-developer-工具/) –

相关问题