0

したがって、ある時点で私の構造が次のようになっているとしましょう。

..........
<td>
  [...]
  <input value="abcabc">
  [...]
</td>
[...]
<td></td>
[...]
<td>
  <input id="booboobooboo01">
  <div></div> <=======I want to click this!
</td>
.........

その div をクリックする必要がありますが、入力を含む td と同じ行にあることを確認する必要がありますvalue="abcabc"。また、クリックする必要がある div (使用できる id またはその他の関連属性を持たない) が、最初の td と同じレベルの td にあり、id CONTAINING "boo" (動的に生成されるため、id のルート部分しか知りません)。td には、私が使用できる関連するものは何も含まれていません。これは、xpathに関する限り、私が試したものです:

//input[@value='abcabc']/../td/input[contains(@id,'boo')]/following-sibling::div

//input[@value='abcabc']/..//td/input[contains(@id,'boo')]/following-sibling::div

もちろん、どれも機能しませんでした(要素が見つかりません)。そのdivを選択する方法とその方法があるかどうか知りたいです。

編集://input[@value='abcabc']/../../td/input[contains(@id,'boo')]/following-sibling::div正しい方法です。これは、受け入れられた回答を持つ人によって提案されました。また、彼はそれを行うためのわずかに異なる方法を提供したことにも注意してください. 詳細については、彼の回答を参照してください。

4

2 に答える 2

3

試す

//input[@value='abcabc']/ancestor::tr[1]/td/input[contains(@id,'boo')]/following-sibling::div[1]

//input[@value='abcabc']/..親にしか上がらないことに注意してください。その<td>ため、あなたのは機能しませんでした。

于 2012-06-06T09:20:21.743 に答える
1

動作する可能性のある別の XPath は、もう少し単純です。

//input[@id='booboobooboo01']/../div[1]
于 2012-06-06T09:23:27.563 に答える