私のページには 11 列のテーブルがあり、列 2 にテキスト値が指定されている場合、同じ行の 11 列目 (矢印ボタン) をクリックしたいと考えています。
私のDOMは次のようになります。
<table id=”atab” width=”100%” class=”at-class”>`
<thead>…</thead>
<tbody>
<tr>...</tr>
<tr>
<td>…</td>
<td>
<a href=”/abc/def/ghi/prop?id=1”>grp1</a>
</td>
<td>…</td>
<td>…</td>
<td>200</td>
<td>…</td>
<td>…</td>
<td>…</td>
<td>…</td>
<td>…</td>
<td>
<ul class=”dropwd”
<li class>
<input class=”a-act a-menu-button” type=”button” value=”^”
<ul class=”sub_menu” style=”vis””>…</ul>
</li>
</ul>
</td>
<tr>
<tbody>
これは機能します(検査要素からxpathを取得したため)。使えないけど。
myxpath = "//*[@id='atab']/tbody/tr[2]/td[11]/ul/li/input”
myxpath.click()
コンテンツを使用してから兄弟を取得する必要があります (11 番目の位置、コンテンツがある場所から 9 番目)。myxpath に対して次のことを試しましたが、要素が見つかりません。他の場所でも同じ形式を使用しましたが、問題ありませんでした。唯一の違いは、今回は隣接する兄弟ではなく x 番目の兄弟を取得していることです。
どこcampg = grp1
//table[@class='at-class']//td[contains(text(),' " + campg + " ')]/following-sibling::td[9]/ul/li/input
//* [@id='atab']//td[contains(text(),' " + campg + " ')]/following-sibling::td[9]/ul/li/input
//* [@id='campaigns']//td[contains(text(),' " + campg + " ')]/following-sibling::td[9]/ul/li/input[@type=’button’]
他の組み合わせも試してみました。