gpt4 book ai didi

.net - 在 Selenium Web 驱动程序中选择特定的下拉菜单列表项

转载 作者:行者123 更新时间:2023-12-04 18:07:03 24 4
gpt4 key购买 nike

我正在尝试使用 .NET Selenium Web 驱动程序从选择下拉列表中选择一个特定选项(这些选项将作为表单提交的一部分发布)。

我目前正在尝试以下操作(当我单步执行代码时它有效 - 即该选项似乎在网络浏览器中被选中,但是一旦我执行真正的代码,该选项的选择就无法工作):

selectWebElement.Click();
selectWebElement.FindElement(By.XPath("//option[text() = '" + text + "']")).Click();

我的代码中需要某种等待吗?有谁知道这样做的防弹方法吗?

更新:

自从发布这篇文章后,我了解到通过文本设置所选选项的更优雅的方法是:

new SelectElement(selectWebElement).SelectByText(text);

但是,这似乎并不能解决问题。我之前没有提到的另一件事是该表单实际上位于 iFrame 中,我正在使用以下内容切换到它:

WebDriver.SwitchTo().Frame(iframeElement);

不确定它在 iframe 中的事实是否会导致问题,但我可以成功获得对 select 元素的引用。 (该表单还有许多我可以成功访问和设置的文本输入元素等)

最佳答案

无需显式点击下拉菜单,只需使用 webdriver API 调用,如下所示:

selectWebElement.selectByVisibleText("");

selectWebElement.selectByIndex();

selectWebElement.selectByValue("");

关于.net - 在 Selenium Web 驱动程序中选择特定的下拉菜单列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23916144/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com