2017-12-03 14 views
1

Capybaraでsend_keysを使用すると、常に指定された入力のclick要素が最初に起動されるようです。Clickイベントを送信しないでCapybara send_keys?

これを回避する方法はありますか?私はすでに入力に焦点を当てていることを知っています(何らかの理由でclickイベントを発生させたくない場合)?

ところで、私はPhantomJSを使用しています。

+0

PhantomJSをセレンで使用していますか?またはポルターガイスト経由で使用していますか? –

+0

PhantomJSのポテジスト。 –

答えて

2

ポテジトリは、キーを送信する前に要素をクリックして、要素がフォーカスされていることを確認します。https://github.com/teampoltergeist/poltergeist/blob/master/lib/capybara/poltergeist/client/browser.coffee#L365。コードからわかるように、要素に既にhttps://github.com/teampoltergeist/poltergeist/blob/master/lib/capybara/poltergeist/client/browser.coffee#L365で定義された選択肢が含まれている場合、クリックはスキップされます。したがって、クリックをスキップする唯一のサポートされている方法は、キーを送信する要素に選択が既に存在することを確認することです。

+0

ありがとうございます。レコードの場合:入力の前に要素をクリックし、 ':tab'キーを送るだけで、これを回避することに成功しました。 –

関連する問題