Исключение в потоке: UnexpectedTagNameException

Я пытаюсь найти выпадающий с помощью Select, но он дает мне ошибку:

Исключение в потоке "main" org.openqa.selenium.support.ui.UnexpectedTagNameException: элемент должен был быть "выбранным", но был "входным"

Пробовал с ByIndex,ByValue, но он не работает

Код

Select dropdown = new 
Select(driver.findElement(By.id("ctl00_MainContent_ddlLocale_Input")));
    //dropdown.selectByIndex(2);
     dropdown.selectByValue("Austria: Vienna");

HTML

td class="rcbInputCell rcbInputCellLeft" style="width:100%;">
<input id="ctl00_MainContent_ddlLocale_Input" class="rcbInput ui-widget-    content" type="text" value="Austria: Vienna"     name="ctl00$MainContent$ddlLocale" autocomplete="off"/>

1 ответ

Как исключение, ясно говоря, что вы находите input элемент, но пытается работать как select элемент.

new Select() ожидать select элемент в качестве ввода, пока вы предоставляете input элемент в качестве ввода.

Вам необходимо подтвердить предоставленный идентификатор ctl00_MainContent_ddlLocale_Input это идентификатор input элемент или select элемент.

Если в вашем случае ctl00_MainContent_ddlLocale_Input одинаково для обоих input а также select элементы, то вам нужно попробовать usimg cssSelector указать select элемент, как показано ниже:

Select dropdown = new Select(driver.findElement(By.cssSelector("select#ctl00_MainContent_ddlLocale_Input"))); 

//dropdown.selectByIndex(2);
dropdown.selectByValue("Austria: Vienna");

Надеюсь, поможет..:)

Другие вопросы по тегам