2013-08-02 154 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选择器。