クラスIDがclsArrowClickで、同じIDが別のアンカータグにあるアンカータグをクリックします。セレン - 複数のアンカー - 同じID - フェッチできません
<td class="text-center" style="width: 25% !important;">
<td class="arrow" data-toggle="tooltip" data-container="body" title=""
style="width: 25% !important; text-align:center" data-original-
title="Select/Show Data">
**<a id="clsArrowClick" class="clsarrowClick" href="#"
onclick="javascript:OpenAddNewWellPopup(this);">
<i class="fa fa-arrow-right"/>
</a>**
<input id="hdnIsSaved0" class="hdnIsArrowSaved" value="0" type="hidden"/>
</td>
</tr>
<tr id="2">
<td style="width:50%; class=" '="" data-container="body" data-
toggle="tooltip" title="" data-original-title="abcd">abcd</td>
<td class="text-center" style="width: 25% !important;">
<td class="arrow" data-toggle="tooltip" data-container="body" title=""
style="width: 25% !important; text-align:center" data-original-
title="Select/Show Data">
**<a id="clsArrowClick" class="clsarrowClick" href="#"
onclick="javascript:OpenAddNewPopup(this);">
<i class="fa fa-arrow-right"/>
</a>**
<input id="hdnIsSaved1" class="hdnIsArrowSaved" value="0" type="hidden"/>
</td>
私はこの方法で簡単な方法すべてを待って、リストを試してみましたが、私のプログラムは、スレッド内のエラー 例外
のように "メイン" org.openqa.selenium.ElementNotVisibleException
を/投げます/ WebDriverWait wait =新しいWebDriverWait(ドライバ、30); //wait.until(ExpectedConditions.presenceOfElementLocated(By.className("clsArrowClick "))); //driver.findElement(By.className("clsarrowClick ")); driver.findElement(By.xpath( "(.//*[ id = 'clsArrowClick'])[1]"))。
1.あなたの条件に一致する要素をクリックしてください私は、ID = "clsArrowClick" &クラス= "clsarrowClick" と2つのリンクがある観察しました。そのうちの1人はJavaScript "OpenAddNewWellPopup(this)"を呼び出し、もう1人はJavaScript "OpenAddNewPopup(this)"を呼び出します。どちらをクリックしますか? 2. HTML DOMをもう少しペーストできますか? 3.あなたのHTML DOMは、私たちが解釈しやすいように整形しておいてください。 – DebanjanB
私は最初の1つをクリックしたいと思います。私が提供できるすべてのHTML –
findElementを使用すると、最初の要素が返され、xpathにインデックスを使用する必要はありません。 visibilityofelementlocated()expectedcondionを使用してください。 – Grasshopper