Selenium VBA如何获取下拉菜单中已选中选项的文本内容
解决方法
你直接对AsSelect转换后的下拉对象调用.Value/.Text不生效,是因为这两个属性读取的是下拉框根元素的属性,并非当前选中选项的属性。
正确实现方式如下:
- 首先通过
AsSelect对象的SelectedOption属性,获取当前已选中的<option>元素对象 - 再从该option对象中读取你需要的属性:
- 读取
.Text属性,可获取选中项显示在页面上的可见文本 - 调用
.Attribute("value")方法,可获取选中项的value属性值
- 读取
代码示例
' 原有代码 Set eleClass = .FindElementByName("oo10").AsSelect ' 读取选中项可见文本 Dim selectedText As String selectedText = eleClass.SelectedOption.Text ' 读取选中项value属性值 Dim selectedValue As String selectedValue = eleClass.SelectedOption.Attribute("value")
异常兼容处理
如果你的下拉框允许不选中任何选项,直接调用SelectedOption会抛出异常,可先判断选中项数量再执行读取逻辑:
If eleClass.SelectedOptions.Count > 0 Then selectedText = eleClass.SelectedOption.Text selectedValue = eleClass.SelectedOption.Attribute("value") End If
内容的提问来源于stack exchange,提问作者YasserKhalil
相关产品推荐
相关产品推荐

