Нажатие на раскрывающееся меню Selenium WebDriver не активирует Javascript для добавления или удаления элементов со страницы.

0

Когда я нажимаю элемент в раскрывающемся списке, он не активирует javascript на данной странице.

Вот элемент, с которым я взаимодействую

<select id="DocumentComment_document_id" name="DocumentComment[document_id]">
<option value=""></option>
<option value="1">Document 1</option>
<option value="2">Document 2</option>
</select>

Вот Javascript, который фактически выполняет работу

jQuery(function($) {
$("#DocumentComment_document_id").live("change", function(){
$.post(
"/wg/wg2/documentComment/ajaxLoadDelineators",
{"docID": $(this).val(),"ajax":true},
function(data){
$("#delineator_options").html(data);
}
);
return false;
}); 
Теги:
selenium
selenium-webdriver

2 ответа

0

Независимый от браузера способ выбора опции из традиционного раскрывающегося списка - это просто щелкнуть эту опцию, не щелкнув сначала выбор. Это противоречит норме для Selenium, но она работает

С# (для выбора документа 1):

IWebElement theOption = _webDriver.FindElement(By.XPath("//select[@id='DocumentComment_document_id']/option[@value='1']"));
theOption.Click();
0

Ваш вопрос не очень ясен, но вы можете определить "действие мыши" с классом Action, который физически переместит указатель точки и щелкнет. Я бы поспорил, что будет работать там, где он не работал с помощью JavascriptExecutor.

На самом деле, я не вижу, как вы можете ошибиться здесь, потому что вы, кажется, видите все содержимое элемента опции, что означает, что у WebDriver не должно возникнуть проблемы с получением одного из двух элементов-элементов и его стандартного нажатия.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню