简体   繁体   English

单击使用Webdriver和javascript的按钮

[英]clicking on a button using Webdriver and javascript

I have seen many questions and solutions for clicking on a button using webdriver. 我已经看到许多使用Webdriver单击按钮的问题和解决方案。 I have tried various solutions and none seem to resolve my issue. 我尝试了各种解决方案,但似乎都无法解决我的问题。 Please help. 请帮忙。 Here is my HTML snippet. 这是我的HTML代码段。

<b>
<input name="submit" onclick="javascript:document.getElementById('submitClicked').value='Next';return true;" type="submit" tabindex="2" class="-opa-btn-primary nextButton" value="Next" alt="'Next'" id="submitNext">
</b>

I need to click on this "Next" button. 我需要单击此“下一步”按钮。

I tried: 我试过了:

JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("return document.getElementById('submitClicked').value='Next';return true;");

This didn't work, it gives exception saying document.getElementBy ID return null. 这没有用,它给出了异常,说明document.getElementBy ID返回null。

Next, I tried: 接下来,我尝试了:

if(driver.findElement(By.Id("submitNext").isEnabled())
    driver.findElement(By.Id("submitNext").click();

This also didn't work. 这也没有用。

Step 1: 第1步:

With the given Info We can use ID for the submit button(submitNext) 使用给定的信息,我们可以将ID用于提交按钮(submitNext)

Step 2: 第2步:

Write a prototype for Visible Function 编写可见函数原型

public static boolean isVisibleByID(String id) 公共静态布尔isVisibleByID(String id)

{ {

try 尝试

{ {

  driver.findElement(By.id(id)).isEnabled();
  return true;

} }

catch(Exception e) catch(异常e)

{ {

    e.printStackTrace();
    return false;

} }

} }

Step 3: 第三步:

if(isVisibleByID("submitNext")) driver.findElement(By.Id("submitNext").click(); if(isVisibleByID(“ submitNext”))driver.findElement(By.Id(“ submitNext”)。click();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM