今天弄了一下午没弄出来,问题如下。
这儿是一个 input 框,输入值以后会跳出查询的选项,然后选择即可。但是 selenium 输入文本内容之后会自己消失 (手动操作的时候,在没选择选项之前,焦点消失输入的内容也会消失),导致后续定位不到选项。有大佬遇到过吗?
正常情况下这个选项会出来
可以试试先点击这个输入框,再输入
这是前端组件的原因,这个组件归根结底是个下拉选择框,不是输入框,输入只是让你搜索使用,不是给你输入用的
我们公司的项目,类似于这样,输入内容后,选择下拉框才能筛选。
我的做法是
第一步,输入框输入内容;
第二步,等待一下,等待下拉框内容架子啊出来;
第三步,因为我知道我输入的肯定存在,选择选择第一个内容就可以了。
你可以试一下,下拉框出来的时候,看下拉框的值是不是可以定位出来
不清楚你是怎么操作的
按正常来说 输入查询字符后 列表展示过滤后的信息 再选择你需要的选项即可 不存在丢失焦点之类的 如果 selenium 提供的 click 不好用可以尝试下用 JavaScript 的 click 方法点击
你得把你的代码贴出来看看才能更好的知道是什么问题
初步猜测是元素查找等待方法写得有问题导致的
已解决,之前用了显示等待搜索出来的元素不知为何焦点会消失,换成 sleep() 就可以出现了,期待后续能有更好的解决办法。