Sendkeys вводит значение для раскрывающегося списка поиска ниже только в режиме отладки. Он не работает в полном объеме даже после добавления ожиданий или нажатия и ввода значения. Используя Javascript, я могу ввести значение в полном объеме, но результаты поиска не отображаются, что не позволяет мне выбрать значение из списка результатов поиска. HTML-код: изображение кода
Используемый код sendkeys:
driver.FindElement(FirstDestination).SendKeys("italy");
Код для используемого javascript:
IJavaScriptExecutor jse = (IJavaScriptExecutor)driver;
jse.ExecuteScript("arguments[0].value='italy';", driver.FindElement(FirstDestination));
Пытался использовать класс Actions, но не повезло. Любая быстрая помощь в этом вопросе очень ценится. Я использую Selenium с C# и specflow в Windows 10.
Кроме того, в этом случае нам понадобится ссылка на страницу, чтобы воспроизвести ту же проблему на нашем конце.
после ввода значения с помощью javascript я использовал sendkeys, чтобы нажать ввод, но sendkeys удаляет значение в поле. Есть ли способ, которым мы можем выйти из табуляции с помощью js, поскольку sendkeys не работает в моем случае. К сожалению, я не могу поделиться ссылкой, но поле похоже на окно поиска Google.
Вы можете использовать WebDriverWait
для отправки ключей, как показано ниже:
IWebElement firstDestination = wait.Until(e => e.FindElement(By.Id("Travel-TripDetails-DestinationFlexdata--label")));
firstDestination.SendKeys("Italy");
нет необходимости использовать IJavaScriptExecutor
, поскольку в этом случае будет достаточно WebDriverWait
.
поэтому, если команды Js работают нормально, и вы не видите никакого результата, возможно, вы пропустили шаг в своем скрипте, например: щелкнув строку поиска или нажав кнопку ввода.