2013-10-17 46 views
1

我有一個帶有表格的xhtml頁面。 Usualy其中一人在單元格中有文本「針文本」。 如何獲得這樣的所有表?xpath:通過標記值查找所有祖先(找到所有具有單元格值的xhtml表格)

<table class="content_table"> 
    <tr> 
    <td>Column 1</td> 
    <td>Column 2</td> 
    </tr> 
    <tr> 
    <td>Value 11</td> 
    <td>Value 21</td></tr> 
    <tr> 
    <td><a href="link.html">needle text</a></td> 
    <td>Value 22</td> 
    </tr> 
</table> 

注:表可以與標籤:THEAD,日等

  1. 收集來自XHTML頁面的所有表 - 與"//*[@class='content_table']"完成。
  2. 找到包含文本的節點,但沒有成功。我曾嘗試過
    //alink[text() = "needle text"]但得到空的結果。
  3. 在父樹的父親中查找作爲祖先的表。
    //alink[text() = "needle text"]/..

回答

2

你可以試試下面XPATH的

//a[.='needle text']/ancestor::table[1][@class='content_table'] 

//table[@class='content_table' and .//a[.='needle text']] 
+0

兩種方法都返回空的結果。可能是因爲表格有thead,th,...'

needle text ...' –

+0

@MrW Try here - http ://videlibri.sourceforge.net/cgi-bin/xidelcgi –

+1

Thanx for link,它非常棒。而且你的下水道在那裏工作,我的原始代碼。必須找到它是我的PHP代碼好嗎? –