2016-11-01 12 views
0

タグの一部のデフォルトテキストを<div>タグで囲んで更新できるようにしたいと思っていますが、これを達成するための良い解決策です。Webdriverjsはdivラップされた段落内のテキストを更新できません

<div class="edit-text"> 
<p> Default text </p> 
</div> 

私は<p>タグに到達し、テキストをクリアし、および/または別の何かでテキストを更新したいと思います:

は、ここで私が編集したいHTMLのスニペットです。

私は要素を見つけ、それとの相互作用を含め、テキストを編集するいくつかの異なる方法を試してみました:

var edit = driver.wait(until.elementLocated(By.xpath("//div[@class='edit-text']/p"))) 
edit.click() 
edit.clear() 
edit.sendKeys('Hello') 

しかし、これは今まで動作するようには思えません。私が見逃していることが起こっていることは他にありますか?

他の投稿ではexecuteScriptを使用していますが、ブラウザが要素の検索をサポートしていないように見えるため、このアプローチを使用してこのHTMLが使用する要素をテキストに更新する良い方法が見つかりませんxpathによって。

+0

なぜあなたはそれをやっているのか分かりません。ブラウザを使って同じことをする方法私の場合は、innerHTMLを使用し、送信キーは使用しないと意味があります –

+0

@VolodymyrBilyachat実際には私がやっていることは分かりません。テキスト、私はちょうど最高のアプローチを知らない。 innerHTMLを使ってどのようにしますか? – jmreicha

+0

私はexecuteScriptがあなたのためだけのオプションであることを恐れています。しかし、私はまだあなたがそれをやっている理由を理解していない、あなたはそれを更新する必要があるあなたはどのようなケースを使用していますか? –

答えて

0

少し実験したところ、executeScriptdocument.querySelectorを使って解決策を得ることができました。

関連する問題