当前位置: 首页 > 面试题库 >

如何使用Java使用Selenium Webdriver通过javascript设置选定Web元素的属性?

苏坚成
2023-03-14
问题内容

我想使用javascript设置网页上所选元素的属性。

我发现了2种使用javascript设置属性的方法

1个

   WebDriver driver; // Assigned elsewhere
    JavascriptExecutor js = (JavascriptExecutor) driver;
    js.executeScript("document.getElementByID('//id of element').setAttribute('attr', '10')");

2

WebElement element = driver.findElement(By.id("foo"));
    String contents = (String)((JavascriptExecutor)driver).executeScript("return arguments[0].innerHTML;", element);

但是我想将javascript应用于使用seleniumwebdriver找到的特定Webelement

例如,我已经使用Selenium Webdriver选择了一个链接

driver.findElement(By.linkText("Click ME"))

现在,我想使用javascript设置此webelement的属性

但我不知道如何将两者结合

请帮助我找到解决方案


问题答案:

遵循以下原则:

JavascriptExecutor js = (JavascriptExecutor) driver;
WebElement element = driver.findElement(By.linkText("Click ME"));
js.executeScript("arguments[0].setAttribute('attr', '10')",element);


 类似资料:
  • 我想用javascript为网页上选定的元素设置属性。 我发现了两种使用javascript设置属性的方法 请帮我找到解决办法

  • 问题内容: 我需要在网页上找到以下元素 我正在用Java为Selenium WebDriver编码。 需要该元素的确切CSS选择器才能与命令一起使用。 选择器还不够好,因为我必须根据不是链接的文本进行搜索,所以我不能使用命令。 问题答案: CSS不允许您执行基于文本的搜索。 xpath 是唯一的选择。

  • 这是我正在使用的,用户代理可以成功设置,而下载首选项不能。 Windows 7、Chrome 26、Selenium-dotnet-2.31。2,chromedriver_win_26.0。1383 取自chromedriver。日志: 检查temp首选项文件在,没有设置和。

  • 我是Selenium web驱动程序的新手,在查找DOM元素时遇到了一些问题。 假设我有一堆<代码> 我的问题是:获取特定后代并单击它的更好方法是什么? 低于我的代码

  • 问题内容: 我的代码中的元素如下所示: 我想设置它的值,所以我用它的xpath创建了一个web元素: 但是现在我看不到设置值的选项… 问题答案: 使用代替 要么 或使用JavascriptExecutor 要么 或(使用javascript) 希望它能对您有所帮助:)

  • 问题内容: 如果我使用以下命令在特定元素上设置CSS值: 我希望能够取消设置特定于元素的值并使用级联值,具体如下: 但是该语法似乎不起作用–是否可以使用其他语法? 编辑: 该值不是从父元素继承的-原始值来自元素级选择器。抱歉给您带来任何混乱! 问题答案: 从jQuery文档: 将样式属性的值设置为空字符串(例如),如果该属性已被直接应用(无论是在HTML样式属性中,通过jQuery的方法还是通过对