我有一个HTML表,它的每一行都用一个唯一的id标识。我试图在其中一行中获取标签文本。我尝试使用$dom->getElementById($id);
,但它提供了该元素下的所有文本值。
结构如下:
<table>
<tr id="1">.....</tr>
<tr id="2">
<td>
<span>Some text</span>
</td>
<td>
.
. //Some html elements
.
<table>
<tbody>
<tr>
<td>
<label>label1</label>
</td> //I want to collect these labels
<td>
<label>label2</label>
</td>
</tr>
</tbody>
</tabel>
.
.
.
我尝试使用这个$elements = $dom->getElementById('2');
代码。它提供了所有的价值观。
输出
["nodeValue"]=> string(37) "Select your options *option 1option 2"
如何才能只获取标签文本。
您试用过getElementsByTagName
吗?例如:
$elements = $dom->getElementById('2')->getElementsByTagName('label');
(编辑):
然后你就可以访问这些项目:
for($i=0;$i<$elements->length;$i++) {
echo "Item $i: " . $elements->item($i)->textContent . "'n";
}