2017-09-25 8 views
-1
<div id="myDiv" style="display: block;"> 
<table> 
    <tr> 
    <td> 
    <a href="javascript:viewDocument('122', '212');"> 
    View Document 
    </a> 
    <td> 
    <tr> 
</table> 
</div> 

クリックできない理由はわかりません。ときどき私が使用したときに働いた<a href="javascript:viewDocument('122', '212');">はアクセスできません。私は、ドキュメントを開き、タグをクリックすることはできませんよリンクは

driver.findElement(By.xpath(//a[contains(. = 'View Document')])) 

しかし、すべての時間が働いていません。私はまた、hrefのjavascriptを直接実行する方法があることを知りたいと思いますか? 私は既にJavascript Executorを使って疲れています。

私はこのエラーを取得しています: - 要素の参照が古くなっています。要素がDOMに追加されなくなったか、ページが更新されました。

+0

あなたはそれが無効親愛あるビュードキュメント – iamsankalp89

+0

// [含まれています(。=「文書の参照を」)]を選択します – iamsankalp89

+0

あなたのxpathが私のブラウザ – iamsankalp89

答えて

0

の使用は、それが働いている。このxpathが

//a[contains(text(),'View')]  

それは私の作品

driver.findElement(By.xpath("//a[contains(text(),'View')]")).click(); 

あなたが古いエラーを得た理由は、ページがザッツを変更されたときおそらくあなたは要素を検索してみてください、あなたが来ていますそれを見つけるためにsapeページに戻る。私はそれのデモを作成しています。まずリンクをクリックしてメインページに戻り、もう一度クリックしてナビゲートし、エラーは発生しません。

for(int i=0;i<=3;i++) 
    { 
    driver.findElement(By.xpath("//a[contains(text(),'View')]")).click(); 
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 
    driver.navigate().back(); 
    } 
+0

xpathを使用して要素にアクセスできます。 Xpathは問題ありません。しかし、いつか要素をクリックすることはできません。私は問題が何であるか分かりません。 –

+0

driver.findElement(By.xpath(// [(。= '文書の' を含む)]))。(クリック) – iamsankalp89

+0

あなたがElementisnotClickableを待つ使用することができ、この正しい方法は、私はwaitForElementToLoadを追加してから使用して要素をチェックし – iamsankalp89

関連する問題