2
ページ上に既存のJavaScript関数を呼び出そうとしていますが、取得できません。Selenium:ページのJavaScript関数を呼び出す
これは私が持っている要素である:
IJavaScriptExecutor js = driver as IJavaScriptExecutor;
js.ExecuteScript("document.f2.submit()");
例外::私は通常、この操作を実行するにはどうすればよい
unknown error: Cannot read property 'submit' of undefined
(Session info: chrome=55.0.2883.87)
(Driver info: chromedriver=2.27.440174 (e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),platform=Windows NT 6.1.7601 SP1 x86_64)
<area shape="rect" coords="513,0,580,66" href="#" onclick="document.f2.submit();">
これは呼び出しているのですか?
スクリプトは実行されていますが、document.f2は何も指していないようですが、ブラウザで実行されたときにその部分が動作することを確認してください。 – acontell
はい、私はクロームコンソールでテストして、正常に実行しました –
それはあなたが 'js.ExecuteScript(" setTimeout(function(){document.f2.submit();}、1000) ); '?考え方は、すべてが「適切」であることを保証するためにしばらくしてからスクリプトを実行することです。 – acontell