2016-05-15 15 views
1

私はのようにID "lastdays_day" を持つ要素を探しています:セレン要素を見つけることができませんWebDriver.FindElements(By.CssSelector( "*"))、C#の

var elements = WebDriver.FindElements(By.Id("lastdays_day")); 

しかしelements.Countは0

です

さえ:

WebDriver.FindElements(By.CssSelector("*")) 

この要素Iは、ページの読み込みBU後(5000)のThread.sleepを試してみました

を一覧表示することができませんtは動作しません。 私は

Driver.SwitchTo().DefaultContent 

または

Driver.SwitchTo().Frame(0) 

を試してみましたが、動作しません。

アイデア?

structure of the page

+1

最初にiFrameを見つける必要があります。 http://stackoverflow.com/questions/24247490/find-elements-inside-forms-and-iframe-using-java-and-selenium-webdriverを見てください。 –

+0

私はそれを試していますが、正しいフレームを見つけるのが難しいです。セレンはフレームさえ見えないようです。 –

答えて

1

Driver.SwitchTo().DefaultContent;フレームのアウトを切り替えることです。

Driver.SwitchTo().Frame(0);は、HTMLのインデックスが1

Driver.SwitchTo()缶から始まるため、パラメータとしてID /名前を受け取り、そのスイッチコマンドはサイドノートとして

Driver.SwitchTo().Frame("ombframe"); // switch to first frame 
Driver.SwitchTo().Frame("MainFrame"); // switch to second frame 

のようになります。どちらか動作しません。要素のIDはlastdays_dayではなく、lastdays_daysで 's'です。 IDが一意であるため1つの要素しか返さないため、使用することができますWebDriver.FindElement

IWebElement element = WebDriver.FindElement(By.Id("lastdays_days")); 
+0

私は Driver.SwitchTo()を使用しています。フレーム( "MainFrame"); '最初の親フレームにDriver.SwitchToを(切り替えようmojmir.novak名前またはID、メインフレーム –

+1

@で見つかりませんフレーム要素:「OpenQA.Selenium.NoSuchFrameException」 追加情報タイプの例外: iは、で終わります).Frame( "ombframe"); '、そしてその要素を持つフレームに移動します。 – Guy

+0

最後に、それは動作します:-) ページ内のフレームのリストを決める方法はありますか? –

関連する問題