Всем привет.
Пытаюсь работать с Select, но не выходит, вылетает исключение ElementNotInteractableException.
Есть идеи по какой причине?
Скрин кода сайта прилагаю.
с вейтами пробовали играться перед тем как с елементом интерактить ?
имплиситли вэйт есть, а если эксплисит, то что ждать?
После задгрузки страницы сетаю филды name + last name - с ними всё окей.
Также sleep 5сек не помог ничего.
попробовал так ?
$("#gender0").waitUntil(visible, 15000).selectOptionByValue(“M”);
Это Селениде? я обычный вебдрайвер юзаю.
извини я не пиши на чистом selenuim
но попробуй так
Select dropdown = new Select(driver.findElement(By.id(gender0)));
dropdown.selectByValue(“M”);
да норм, пробовал разные методы, не получается.
меня напрягает в атрибут aria-hidden=“true”.
может он не даёт нормально взаимодествовать с Select.
Как его обойти?
Смутное ощущение, что вы работаете не с тем элементом.
Тот селект на скрине - скорее всего скрыт. А визуальный селект возможно сделан div’вами.
Пробуйте стиль поменять-вместо -999px напишите 0 и убрать стиль, который вы выше написали. Поймёте, о чём я.
Да простите меня за мою неграмотность, новичёк я в этом деле.
Как и где я должен поменять стиль?
если инспектировать элемент выпадающего списка, то вот такая картина.
получается что с как таковым селектом здесь нельзя работать? надо искать этот список?
Похоже на Select2. Такими элементами проще управлять при помощи нативных API.
Так и думал.
Вы смотрите на select, а он на самом деле скрыт, а над ним сделана обертка в виде этих ваших div / ul / li элементов.
Варианты:
- сделать настоящий select видимым (изменив этому элементу стили - например с помощью execute_script), дальше понятно.;
- работать с элементами, которые вы показали на скрине (с этими div/ul/li) как обычно вы привыкли: нашли, кликнули и блаблабла.
Как вам удобно.
Спасибо!
Сделал!
Сделал Селект видимым - изменил стили на те, что вы указали выше с помощью JSExecutor.
this element may have dynamic id. (gender0, gender1,…)try to select an element using css [id*=gender].