c#
  • selenium
  • selenium-webdriver
  • 2017-06-27 42 views 0 likes 
    0

    我試圖從「Subject」字段中讀取文本值,如下所述。Selenium C#:無法從帶有「pre」html標籤的文本框中讀取值

    string settingsEmailSubject = iBrowserr.GetValue("//div[@class='sc-view sc-pane sc-panel sc-sheet settings-pane']/div/div[@class='sc-view sc-text-field-view subject-line allow-select']"); 
    

    但是,我的代碼返回空值。我正在尋求你的建議來解決這個問題。

    注:

    試圖與Webelementdriver.GetAttributedriver.Selected.GetSelected

    的XPath:

    //div[@class='sc-view sc-pane sc-panel sc-sheet settings-pane']/div/div[@class='sc-view sc-text-field-view subject-line allow-select']/pre[@contenteditable='true' is not working as well. 
    

    enter image description here

    +0

    在java中,我們有getText()從元素中獲取文本。我們在c#中有類似的東西嗎?你可以嘗試這樣 - > driver.FindElement(By.Class(「anketa_item-city」))。 –

    +0

    您可以提供元素的完整HTML嗎? – Monika

    +0

    嗨莫妮卡。請參閱我的屏幕截圖。它有關於元素的完整細節。如果您需要更多信息,請告訴我。 – Dhanaprabhu

    回答

    0

    您可以通過選擇pre的父元素實現這一點,然後在元素中搜索pre元素:

    var parent_of_pre = iBrowserr.FindElement(By.XPath("xpath-got-from-chrome")) 
    var pre_element = parent_of_pre.FindElement(By.XPath("pre")) 
    string text_pre_element = pre_element.Text 
    

    請注意,只有在xpath正確的情況下,這纔有效。

    +0

    嗨,亞歷克斯,我忘了更新我的問題。這2個選項已經嘗試過。但是,沒有,運氣:(! – Dhanaprabhu

    +0

    發佈一個完整的跟蹤錯誤,看看發生了什麼 –

    +0

    嗨,亞歷克斯,它說元素沒有找到相同的邏輯適用於彈出其他元素主題與「主題」元素是「 pre「html標記 – Dhanaprabhu

    相關問題