2013-08-02 155 views
1

我想獲得tr元素,其中包含span.selected正確的列。我需要使用一個選擇器來完成它。CSS選擇器 - 獲取元素知道元素的子元素

它發現如果元素存在:

By.CssSelector("tr[role='row'].jqgrow td[aria-describedby$='Default'] span.selected") 

但它返回span.selected IWebElement ..我怎樣才能獲得tr[role='row'].jqgrow IWebElement(使用CssSelector或XPath)?

回答

3

像這樣的東西可以使用XPath

//tr[@role='row'] 
    [contains(@class, 'jqgrow')] 
    [.//td[ends-with(@aria-describedby, 'Default')][.//span[contains(@class, 'selected')]]] 

如果要素有多個類工作,它更安全(更少可讀性)以替換(@class and contains(concat(' ', normalize-space(@class), ' '), ' jqgrow '))(從Python的cssselect借用的技巧)

我不認爲你可以用C單獨的SS選擇器。