2017-07-14 128 views
0

任何人都可以帮助我,我怎么点击一个按钮,这是一个div里面?而在第一页上,第二页的按钮可用于点击,但使用我的代码我无法实现它。我怎样才能点击一个链接在按钮与硒

这里是我的代码:

> WebElement btn_Submit = 
> driver.findElement(By.cssSelector("a[class*='bodylink']")); 
>    
>    clickable=isClickable(btn_Submit); 
>    if(clickable){ 
>     btn_Submit.sendKeys(Keys.ENTER); 
> 
>    } 

下面是从页的摘录:

<div id="pagingBody"> 
<div style="margin-bottom:10px;font-weight:bold;" id="ex-gen3932">100 Total Results</div> 
[1 - 50] | 
<a id="ex-gen3926" class="bodylink" href="#" onclick="gosearch('PowRan',51); return false;">[51 - 100]</a> 
</div> 
+1

在我们的代码,我们没有看到像“bodylink” –

回答

0

相反的:

WebElement btn_Submit = driver.findElement(By.xpath("//div[@id='pagingBody']//following::a[1])); 

WebElement btn_Submit = driver.findElement(By.cssSelector("a[href*='bodylink']")); 

与尝试

如果需要诱导ExplicitWaitWebDriverWait使按钮可点击然后调用click()方法。

让我知道如果这个回答你的问题。

+0

它没有任何工作HREF链接。我不能放置id,因为它是随机生成的,所以我用class来测试ur代码,但发生Exception:org.openqa.selenium.NoSuchElementException:no such element:Unable to locate element:{“method”:“xpath”, “selector”:“a [@ class ='bodylink']”} –

+0

好的,你可以考虑按照实际格式来设置HTML DOM。我们可以创建'xpath' wrt'div id =“pagingBody”'并调用'click()'方法。谢谢 – DebanjanB

+0

请检查更新的答案。 – DebanjanB

0

我假设你已经调试过,元素不为空。

而不是做:

btn_Submit.sendKeys(Keys.ENTER); 

尝试做:

btn_Submit.click(); 

这应该再养你onclick事件。

+0

它没有工作,我假设原因是硒还不能找到这个按钮点击 –

+0

你承担?调试并找出答案。 – MartinByers

+0

我相信它无法找到该按钮 –

0

试试这个:

WebElement btn_Submit = 
driver.findElement(By.cssSelector("div > a.bodylink")); 
btn_Submit.click();  
相关问题