You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#使用Playwright时无法选择非标准下拉框选项该如何解决?

问题根源

SelectOptionAsync 方法仅支持操作原生 <select> 标签实现的下拉框,目标站点的称谓选择下拉是前端用JS配合DIV、SPAN自定义实现的模拟下拉组件,不满足该方法的调用条件,所以执行后没有效果。

解决方法

自定义模拟下拉的操作逻辑更简单,只需要两步即可完成选择:

  • 点击下拉框的触发区域,唤醒下拉选项面板
  • 点击你需要选中的「Mr.」选项即可

你可以把原有代码中调用SelectOptionAsync的那一行替换为以下代码:

// 点击称谓下拉框触发区域,展开下拉选项列表
await page.ClickAsync("css=#registration-form-title + span .select2-selection");
// 点击目标选项完成选择
await page.ClickAsync("text=Mr.");

额外优化建议

尽量不要使用绝对路径的XPath定位元素,页面结构稍有变动就会导致定位失效,优先使用ID、CSS选择器、文本定位等更稳定的定位方式。

内容的提问来源于stack exchange,提问作者meliz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:06:00