我有一个xpath查询,它从表行返回td(宽度为60)的描述。我为每个查询提取0到30行。
$textTags = $xpath->query( '//table/tr/td[@width=60]' );
每个表行看起来都像这个
<tr>
<td width=60 bgcolor='#ffffcc'><b>Description</b></td>
<td align=center width=80><img src='http://></td>
<td width=50 bgcolor='#ffffcc' align=center><b>1</b></td>
<td bgcolor='#ffffcc'><b>Toy</b></td>
<input type='hidden' name='obj_id_3' value='20885'><input type='hidden' name='oldcost_3' value='0'></td>
<td align=center bgcolor='#ffffcc'><input type='text' name='cost_3' size=6 maxlength=5 value='0'></td>
<td width=180 bgcolor='#ffffcc'><i>more text</i></td>
<td width=40 bgcolor='#ffffcc' align=center><select name=back_to_inv[20885]>
<tr>this continues on a max of 30 times</tr>
我运行了一个循环来获得以下信息:
foreach ( $textTags as $tag ){
$item = $tag->nodeValue;
}
我得到了我需要的描述文本。然而,有一个带有name=obj_id_3
和value=20885
的"隐藏"输入类型,我需要在每个相应的过程中获得。此外,我如何获得这些隐藏的输入值,这些值是我正在查看的当前tr的一部分?每个tr只有一个我需要访问的记录,所以我不必担心多个,上面的表就是每个表的外观,减去了唯一的描述和隐藏的名称和值。
您可以使用或单独查询输入。类似的东西
$xpath->query("//table/tr/td[@width=60]|//table/tr/input[contains(@id, 'obj_id')]");