首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Selenium Web驱动程序从下拉菜单中选择选项

Selenium Web驱动程序从下拉菜单中选择选项
EN

Stack Overflow用户
提问于 2020-05-17 00:49:42
回答 1查看 55关注 0票数 0

我得到了这个HTML

代码语言:javascript
复制
<div>
      <div tabindex="0" class="dropdown xs-dropdown show" id="selBudgetYearRange-wrap" style="border: 1px solid rgb(206, 212, 218); border-image: none;">
        <button tabindex="-1" class="btn btn-default dropdown-toggle" id="selBudgetYearRange-btn" aria-expanded="true" aria-haspopup="true" type="button" data-toggle="dropdown">2020 vs 2019 (Oct 2019 - Mar 2020 vs Oct 2018 - Mar 2019)
        </button>
        <div class="dropdown-menu show" id="selBudgetYearRange-dmenu" aria-labelledby="selBudgetYearRange-btn" style="left: 0px; top: 0px; width: calc(100% + 2 * 1px); margin-top: calc(0px + 1px); margin-left: calc(-0px - 1px); position: absolute; transform: translate3d(0px, 21px, 0px);" x-placement="bottom-start">
        <a class="dropdown-item active" onclick="dropdownChanged(this, 'selBudgetYearRange','201910-202003,2');;return false;" href="javascript:void(0)">2020 vs 2019 (Oct 2019 - Mar 2020 vs Oct 2018 - Mar 2019)</a>
        <a class="dropdown-item" onclick="dropdownChanged(this, 'selBudgetYearRange','201810-201909,2');;return false;" href="javascript:void(0)">2019 vs 2018 (Whole Year Oct - Sep)</a>
        <a class="dropdown-item" onclick="dropdownChanged(this, 'selBudgetYearRange','201710-201809,2');;return false;" href="javascript:void(0)">2018 vs 2017 (Whole Year Oct - Sep)</a>
      </div><input name="selBudgetYearRange" id="selBudgetYearRange" type="hidden" value="201910-202003,2"></div>
</div>

它有3个选项

2020 vs 2019 ( 2019年10月- 2020年3月vs 2018年10月-2019年3月)

2019 vs 2018 (全年10-9月)

2018与2017 (全年10-9月)

我已经设法解决了这一点,通过使用

代码语言:javascript
复制
.FindElementByXPath("//*[text()='2019 vs 2018 (Whole Year Oct - Sep)']").Click

我可以选择中间的选项,但是只有当我首先单击下拉菜单,使选项可见时,它才起作用。

我似乎不能让selenium为我单击下拉菜单并使选项可见,这样我就可以使用上面的xpath来选择我想要的选项。

有没有人能告诉我怎么做?或者,如果有一种方法可以选择我的选项,而不需要先显示下拉菜单?

EN

回答 1

Stack Overflow用户

发布于 2020-05-17 21:57:34

所以我设法让它起作用了。通过使用clickdouble (在找出xpath之后)

我不知道为什么我需要使用clickdouble而不是click。

但它是有效的,所以我不会抱怨太多

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61840339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档