2017-11-04 6 views
1

私は、次のHTML次の兄弟を使ってxpathを構成しますか?

<table id="registration"> 
    <tbody> 
     <tr> 
     <td class="registration-label"><span class="size13">Password</span> 
     </td> 
     <td> 
     </td> 
     <td class="form"> 
      <input autocomplete="off" class="title wide-input" name="icgdtval" value="" size="50" maxlength="50" type="password"/> 
     </td> 
     </tr> 
     <tr> 
     <td class="registration-label"><span class="size13">Email</span></td> 
     <td></td> 
     <td><input class="title wide-input" name="hkogplva" value="" maxlength="150" size="26" type="text"/></td> 
     </tr> 
     <tr> 
     <td class="registration-label"><span class="size13">Confirm Email</span></td> 
     <td></td> 
     <td><input class="title wide-input" name="EmailB" value="" size="26" maxlength="150" type="text"/></td> 
     </tr> 
    </tbody> 
</table> 

がレンダリングされたバージョンは、私は、テキストボックスに一致するように、テキストボックスの前にテキストを使用してXPathを構築しようとしているこの

enter image description here

のように見えてい。

例:Emailの前に入力タグがあるとわかるxpathを、Emailを参照として作成します。 IDまたは名前が動的に生成されるので、テキストボックス自体を見つけることができません。

私が働くこのXPathを構築してきたが、私はそれがテキストボックスの前にテキストを使用して作業することができなかった

//tr[td][3]/td[contains(@class,'registration-label')]/following-sibling::td[2] 

答えて

1

あなたはfollowing-siblingの代わりにfollowingを使用しようとすることができます:

//td[.="Password"]/following::input 
//td[.="Email"]/following::input 
//td[.="Confirm Email"]/following::input 

または、まだ使用したい場合はfollowing-sibling

//td[.="Password"]/following-sibling::td/input 
//td[.="Email"]/following-sibling::td/input 
//td[.="Confirm Email"]/following-sibling::td/input 
+0

これらを使用すると '' [1] 'を追加する傾向がありますので、あなたはただちに「ただちに」を得ることができます。 –

関連する問題