[英]Selenium: Click on a “<div><a></a></div>” button
我試圖單擊一個按鈕。 它具有以下結構:
<div class="button-wrapper" id="button-verify-wrapper">
<a x-ng-click="verifySfdcConnection()" class="clearfix float-left button-green">
<div class="icon-green icon-green-verify"></div>
<div class="button-label ng-binding">Verify Connection</div>
</a>
<div x-ng-class="{'connection-verified':wizardData.inputSource.sfdc.connectionStatus}" x-ng-show="wizardData.inputSource.sfdc.connectionStatus" style="" class="connection-verified"></div>
</div>
有什么幫助嗎? 我嘗試了這個:
driver.findElement(By.xpath(".//*[@id='button-verify-wrapper']/a/div[1]")).click();
但這沒有幫助。 謝謝
您應該使用css選擇器單擊鏈接,例如:
a[x-ng-click*='verifySfdcConnection']
我認為<a>
元素可在此處單擊。 您應該嘗試定位<a>
元素,然后執行click()
操作,如下所示:-
使用By.cssSelector()
:-
driver.findElement(By.cssSelector("div#button-verify-wrapper > a")).click();
使用By.linkText()
:-
driver.findElement(By.linkText("Verify Connection")).click();
使用By.xpath()
:-
driver.findElement(By.xpath(".//a[normalize-space(.) = 'Verify Connection']")).click();
如果仍然無法執行點擊,請嘗試使用JavascriptExecutor
作為替代解決方案,如下所示:-
((JavascriptExecutor)driver).executeScript("arguments[0].click()", driver.findElement(By.cssSelector("div#button-verify-wrapper > a")));
driver.findElement(By.id( “按鈕驗證-包裝”))點擊();
注意:1.如果直接給定ID或類名,而無需使用xpath,則可以直接使用By.id和By.class。2.要對Web元素執行操作,我們應該知道該元素ex的屬性。 如果不是按鈕,則無法執行單擊
試試這個: $("#button-verify-wrapper > a").click()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.