2013-12-04 6 views
0
<table id="versionId" class="displayTable" cellspacing="0" cellpadding="0" rules="groups" style="width:100%;border-right:1px solid #DFDFDF;border-left:1px solid #DFDFDF;"> 
<caption class="displayCaption"> 
<thead> 
<tbody> 
<tr class="rowOdd"> 
<td style="width:1%"> 
<td style="width:15%;"> 
<span class="font">1</span> 
</td> 
<td style="width:12%"> 
<td style="width:10%"> 
<td style="width:10%"> 
<td style="width:13%"> 
<td style="width:18%"> 
======= 

в любом случае я могу получить это 1 и распечатать?Получить и распечатать элемент с помощью xpath

я опробовал этот .//*[@id='versionId']/tbody/tr/td[2]/span/text():

System.out.println(driver.findElement(By.xpath(".//*[@id='versionId']/tbody/tr/td[2]/span/text()"))); 

это вернуть меня с ошибкой:

Данный селектор .// [@ ид = 'VERSIONID']/TBODY/тр/тд [2 ]/span/text() либо недействителен, либо не приводит к использованию WebElement. Произошла следующая ошибка: InvalidSelectorError: результат выражения xpath ".// [@ id = 'versionId']/tbody/tr/td [2]/span/text()" is: [object XrayWrapper [object Текст]]. Это должен быть элемент.

ПОМОЩЬ D:

+1

Может быть, вы должны удалить точку перед '// *' – Givi

ответ

4

В вашем XPath вы получаете текст, а не элемент. Чтобы найти элемент, который вы можете использовать следующие: XPath //span[@class='font']

Если вам необходимо распечатать текст, то код должен быть следующим: «** **»

System.out.println(driver.findElement(By.xpath("//span[@class='font']")).getText()) 
+0

Спасибо вам за помощь! это тот, который я ищу! – sssheng

Смежные вопросы