如何使用 Playwright 获得下拉列表的选定选项

问题描述

我正在使用 Playwright 的 C# 语言绑定。

示例 HTML:

<select id="txtType" name="Type" class="form-control">
        <option>Blog Posts</option>
        <option>Books</option>
        <option>Presentations</option>
        <option>Videos</option>
        <option>podcasts</option>
        <option>Examples</option>
</select>

我知道我可以使用 Page.SelectOptionAsync 为下拉列表设置选定的选项,但如何获取当前选定的选项?

当我查看 DropDown 的所有属性时,我看不到 ElementHandles 的任何区别。

解决方法

您可以使用 EvalOnSelectorAsync,传递一个 CSS 选择器,以及期望该元素并返回该元素值的函数:

await page.EvalOnSelectorAsync<string>("#txtType","el => el.value")