友達、
ドロップダウン リストをクリックして、表示された任意の値を選択する必要がある状況があります。ドロップダウンは、次のコードによって識別されます
<select id="order_unit_line_rate_806782_is_addenda_enabled" class="selects_for_487886" onchange="select_addendum(806782, this);dateShowMemory(this.options[this.selectedIndex].value, '806782');" uniqueattr="Dynamic Site Accelerator / Dynamic Site Accelerator / Additional Usage Commitment / drop down" name="order_unit_line_rate[806782][is_addenda_enabled]">
<option value="0" uniqueattr="Dynamic Site Accelerator / Dynamic Site Accelerator / Additional Usage Commitment / Fee"> Fee </option>
<option value="1" uniqueattr="Dynamic Site Accelerator / Dynamic Site Accelerator / Additional Usage Commitment / See Attached Addendum"> See Attached Addendum </option>
ここで、「select」タグと「option」タグはネストされた階層にあります。ドロップダウンリストをクリックして、これを行うことでアイテムを表示できます
List<WebElement> dropDownLists = driver.findElements(By.tagName("select"));
for (WebElement l : dropDownLists) {
if (l.getAttribute("uniqueattr").equalsIgnoreCase("Dynamic Site Accelerator / Dynamic Site Accelerator / Additional Usage Commitment / drop down")) {
l.click();
} // end if
} // end for
しかし、ドロップダウンのオプションをクリックするためにさらにトラバースすることはできません:(。
これは私が試したものですが、機能していません
List<WebElement> newList = driver.findElements(By.tagName("option"));
for (WebElement ll : newList) {
if (ll.getAttribute("uniqueattr").equalsIgnoreCase("Dynamic Site Accelerator / Dynamic Site Accelerator / Additional Usage Commitment / Straight Line Commitment")) {
ll.click();
}
}