Puppeteer page.click CSS 选择器不起作用



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

  1. <input class="select2-search__field form-control">

阿拉伯数字。<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 Dev Tools控制台中,我只是用来确保document.querySelectorAll("ul.select2-selection__rendered>li>input")我的目标是正确的元素,并且它工作得很好,输出是两个输入元素的数组。

您可以获取所有元素(将ElementHandles(,然后调用click函数。

let links = await page.$$('ul.select2-selection__rendered>li>input');
await links[1].click(); // the second element has index 1 (0-based indexing)

最新更新