【发布时间】:2017-03-29 19:56:31
【问题描述】:
我正在尝试从下拉列表中获取值。我有一门课可以上传一个视频,然后我想发布。我需要更改状态才能做到这一点。我看到另一个人问了类似的问题,但这些建议似乎都不起作用。我正在提供html,调用类中的方法和方法。非常感谢任何帮助。
这是选择在网页上的样子:
<select id="group_media_953_status" class="status" name="group_media_attributes[953][status]" style="display: none;">
<option value="published" selected="selected">Published</option>
<option value="scheduled">Scheduled</option>
<option value="unpublished">Not Published</option>
</select>
这是我对方法的调用:
dropdown("group_media_953_status", "Published");
方法如下:
public void dropdown(String name, String sel) {
try {
WebElement select = driver.findElement(By.id(name));
List<WebElement> options = select.findElements(By.tagName("option"));
for (WebElement option : options) {
System.out.println(option.getText());
// if(sel.equals(option.getText()))
// option.click();
}
} catch (NoSuchElementException ex) {
System.err.println("Element in dropdown menu was not found");
driver.quit();
System.exit(0);
}
}
这里是完整的 html。我没有编写 html 代码,因此无法更改它:
<td class="group-status">
<div class="field status">
<select id="group_media_9870_status" class="status" name="group_media_attributes[9870][status]" style="display: none;">
<option value="published" selected="selected">Published</option>
<option value="scheduled">Scheduled</option>
<option value="unpublished">Not Published</option>
</select>
<div id="group_media_9870_status_chosen" class="chosen-container chosen-container-single chosen-container-single-nosearch" style="width: 0px;" title="">
<a class="chosen-single published">
<span>Published</span>
<div>
<b></b>
</div>
</a>
<div class="chosen-drop">
<div class="chosen-search">
<ul class="chosen-results">
</div>
我也尝试了 xpath,但也没有找到 select 元素。 /html/body/div[1]/section/div/div/form[2]/table/tbody/tr[1]/td[3]/div[1]/select 仍然没有找到“选择"元素。
【问题讨论】:
-
建议您添加类似问题的链接,只是为了完整起见。