Puppeteer page.click CSS селектор не работает - PullRequest
0 голосов
/ 26 мая 2020

В настоящее время у меня есть эти два тега ввода в моем 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 Dev Tools я использовал document.querySelectorAll("ul.select2-selection__rendered>li>input"), чтобы убедиться, что я нацелен на правильные элементы, и все работало нормально, на выходе был массив из двух входных элементов.

1 Ответ

1 голос
/ 26 мая 2020

Вы можете сначала получить элементы (это будут ElementHandle s), а затем вызвать функцию щелчка.

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