javascript Puppeteerpage.clickCSS选择器不工作

0pizxfdo  于 2023-04-19  发布在  Java
关注(0)|答案(1)|浏览(123)

我的DOM中目前有这两个输入标记

  1. <input class="select2-search__field form-control">
  2. <input class="select2-search__field form-control">
    正如您所注意到的,它们是具有相同类的完全相同的输入标记
    但是,我可以使用page.click()选择第一个,而不能选择第二个
    我试着做了一些类似下面的例子:
await page.click("ul.select2-selection__rendered:nth-of-type(2)>li>input");

还有:

await page.click("ul.select2-selection__rendered>li>input")[1];

但这些都不管用。
在Chrome开发工具控制台中,我只是为了确保document.querySelectorAll("ul.select2-selection__rendered>li>input")目标元素正确,它工作得很好,输出是一个包含两个输入元素的数组。

57hvy0tb

57hvy0tb1#

您可以先获取元素(即ElementHandle s),然后调用click函数。

let links = await page.$$('ul.select2-selection__rendered>li>input');
await links[0].click();

相关问题