使用Selenium WebDriver单击下拉菜单不会激活Javascript来添加或删除页面中的项目
Clicking drop down with Selenium WebDriver does not activate Javascript to add or remove items from the page.
当我单击下拉列表中的项目时,它不会激活给定页面上的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;
});
您的问题不是很清楚,但您可以用action类定义一个"鼠标操作",该操作将物理移动指针并单击。我敢打赌,在使用JavascriptExecutor不起作用的地方,它会起作用。
实际上,我看不出你怎么会在这里出错,因为你似乎看到了整个选项元素的内容,这意味着WebDriver应该可以毫无问题地获得2个选项元素中的一个,并以标准方式单击它。
从传统下拉列表中选择选项的一种独立于浏览器的方法是单击该选项,而不是先单击select。这违反了硒的标准,但它在中有效
C#代码(选择文件1):
IWebElement theOption = _webDriver.FindElement(By.XPath("//select[@id='DocumentComment_document_id']/option[@value='1']"));
theOption.Click();
相关文章:
- 删除添加行
- 删除添加的事件侦听器
- 删除添加的输入字段
- 如何在 fabricjs 中从画布中删除添加的模板
- 删除添加空值的 Javascript 对象项
- .append() 删除添加的元素
- Javascript/jQuery - 根据数值删除/添加多个元素的类
- 单击时添加几行,双击删除添加的行
- 从表单中删除添加的元素不起作用
- 当我在单击元素外部时,如何删除添加到单击元素的功能
- 从javascript数组内的对象中删除/添加特定变量
- 如何使用单击hypelink从表单输入文本字段中删除/添加属性
- 想要在单击删除链接时删除添加到缩略图中的图像
- TinyMCE 4删除/添加所有图像的属性
- 当一天的开始和结束时间改变时,删除/添加正确的
's - 使用JavaScript删除添加到选定文本的高亮
- 删除/添加类函数
- 删除/添加一个类,然后在这个新类上执行一个事件
- TinyMCE插件-如何删除添加的代码
- 使用jquery删除/添加类到正文