2017-09-07 15 views
1

私は苦労しており、私は複数のことを試みました。申し訳ありませんが、私のフォーマットが正しくありませんが、とにかく、私はクリックする必要が問題になっている要素である場合:JavaScriptを使用してボタンをクリックするにはどうすればよいですか:void(0)Selenium?

<button href="javascript:void(0)" id="payNewBeneficiary" class="button-new-payee"> 
              <div class="icon"> 
               <div></div> 
              </div> 
              <h2>Someone new</h2> 
              <p>Make a once-off payment or pay someone new</p> 
             </button> 

これまでのところ、私はID、cssSelectorとXPathで要素を発見しようとしました。私もこの

Actions act = new Actions(driver); 
act.moveToElement(payNewBeneficiaryButton); 
act.click(payNewBeneficiaryButton); 
     act.build().perform(); 

と同様に、この

((JavascriptExecutor)driver).executeScript("document.getElementById('payNewBeneficiary').click()"); 

そしてこの

JavascriptExecutor exec = (JavascriptExecutor) driver; 
exec.executeScript("arguments[0].click()", payNewBeneficiaryButton); 
+2

あなたはコンピュータのマウスを取り出し、要素の真上にポインタを置き、マウスの左ボタンを押します。これで、ボタンをクリックする方法です。もちろん、それが "無効"なら、それをクリックすると何も起こりません。 – adeneo

+0

ボタンの 'href'はカスタム属性ですが、デフォルトアクションはありません。 – Teemu

+1

私はあなたがここで何を望んでいるかを正確に理解しようと苦労しています。エラーが表示されますか?あなたがそれをクリックしたときに何もするつもりはありません。マウスでクリックするとどうなりますか? – IamBatman

答えて

0

上にあってもよい、問題は、要素がクリックできないということでした。次のコードを使用して、要素が遮られなくなるまでページを下にスクロールしました。

wait.until(ExpectedConditions.elementToBeClickable(payNewBeneficiaryButton)); 
((JavascriptExecutor)driver).executeScript("arguments[0].scrollIntoView();",payNewBeneficiaryButton); 
payNewBeneficiaryButton.click(); 

お手数をおかけしていただきありがとうございます。感謝します。

1

はこれら

driver.findElement(By.css("<one of the below css>")).click() 

CSSを試してみてくださいを試してみたあなたは

012を試すことができます
button#payNewBeneficiary div div 
button#payNewBeneficiary div 
button#payNewBeneficiary h2 
button#payNewBeneficiary p 

時々聞くだから指定された子要素

関連する問題