2012-12-27 1 views
1

le texte source:WebDriver pourquoi la table peut obtenir sa taille, mais canot obtenir son texte

<TABLE class=mini-listbox-items style="WIDTH: 100%" cellSpacing=0 cellPadding=0> 
<TBODY> 
<TR class="mini-listbox-item mini-listbox-item-selected" id=mini-45$0 index="0"> 
<TD class=mini-listbox-checkbox><INPUT id=mini-45$ck$0 type=checkbox CHECKED></TD> 
<TD class="">xx</TD></TR> 
<TR class=mini-listbox-item id=mini-45$1 index="1"> 
<TD class=mini-listbox-checkbox><INPUT id=mini-45$ck$1 type=checkbox></TD> 
<TD class="">yy</TD></TR></TBODY></TABLE></DIV><INPUT type=hidden value=Y></DIV> 
<DIV class=mini-errorIcon></DIV></DIV></DIV> 
<DIV class=mini-shadow style="DISPLAY: none; Z-INDEX: 1002; LEFT: 393px; WIDTH: 78px; TOP: 326px; HEIGHT: 46px"></DIV></BODY> 

mon code:

driver.findElements(By.xpath(("//td[@class='mini-listbox-checkbox']/following-sibling::td[position()=1]"))).size(); 
driver.findElements(By.xpath(("//td[@class='mini-listbox-checkbox']/following-sibling::td[position()=1]"))).get(0).getText(); 

la première ligne, il imprime 2, puis la deuxième ligne, il n'en imprime aucun, pourquoi?

Répondre

1

Votre logique fonctionne correctement.

int n=driver.findElements(By.xpath(("//td[@class='mini-listbox-checkbox']/following-sibling::td[position()=1]"))).size(); 
    String s=driver.findElements(By.xpath(("//td[@class='mini-listbox-checkbox']/following-sibling::td[position()=1]"))).get(0).getText(); 
    System.out.println(n+"======>>"+s); 

Le code ci-dessus donne uniquement une sortie correcte.

2 ====== >> xx

+0

je l'ai fixé, je trouve la reason.because il a un div dessus de ce tableau whoes style est pas d'affichage, je peux utiliser js pour réinitialiser l'affichage de style bolck, alors je peux obtenir le texte, de toute façon, merci :) –

Questions connexes