2016-05-20 13 views
0

ドロップダウンオプションの選択とフィルタ結果をクリックしようとしています。しかし、私は構文を釘付けにすることはできません。Seleniumがwebdriverを使用してドロップダウンオプションを選択しています。

URLの場所のために= "http://themeforest.net/item/realsite-material-real-estate-wordpress-theme/full_screen_preview/10917194"

ドロップダウンの選択: 'パロアルト'

私の試みは以下の通りです:

driver.FindElement(By.XPath("//div[@id='cover_widget-2']/div[3]/div/div/form/div/div/div/div/div/ul/li[3]/a")).Click(); 

driver.FindElement(By.XPath("//button[@type='submit']")).Click(); 

それは要素が存在doesntのことを言いますが、私は把握カント構文

私は何が間違っているようですか?

答えて

0
  1. ドロップダウンとボタンの要素はiframeの名前 "preview-frame"にあります。要素を見つける前に、iframeに切り替える必要があります。あなたは、リスト内の項目を選択し

をドロップダウンをクリックする必要が

  • 以下のコードは、ラベルの場所からドロップダウンとリストの要素を見つける方法を示しています。

    driver.SwitchTo().Frame(driver.FindElement(By.Name("preview-frame"))); 
    IJavaScriptExecutor jse = (IJavaScriptExecutor)driver; 
    jse.ExecuteScript("window.scrollBy(0,400)", ""); 
    driver.FindElement(By.XPath("//label[contains(.,'Location')]/../div/button")).Click(); 
    System.Threading.Thread.Sleep(1000); 
    driver.FindElement(By.XPath("//label[contains(.,'Location')]/../div/div/ul/li/a[contains(.,'Palo Alto')]")).Click(); 
    driver.FindElement(By.XPath("//button[@type='submit']")).Click(); 
    
  • +0

    これは機能します!しかし、どのように隠し要素をクリックするのですか? var/div/div/div/div/div/div/div/div/div/div/div/div/div/div/div/div要素は、 [3]/a ")); ((IJavaScriptExecutor)ドライバ).ExecuteScript( "arguments [0] .style.display = ''"、element); element.Click(); – Resourceful

    +0

    @Resourceful私は自分の答えを更新しました。 – Buaban

    +0

    まだ2行目で動作していません。追加情報:不明なエラー:ポイント(151,540)で要素をクリックできません。