3
我有以下的HTML表格结构DOMXPath查询来获取的复选框的名称在表列
<table id="gvPOItems">
<tbody>
<tr>
<td class="grdItemClass">
<span class="CSSchkupdatethis">
<input id="gvPOItems_cbxForShipping_0" type="checkbox" name="gvPOItems$ctl02$cbxForShipping">
</span>
</td>
<td class="grdItemClass">
<span id="gvPOItems_lblProductID_0">685029</span>
</td>
<td>
<img src="" alt="Product Photo">
</td>
<td class="grdItemClass">SWA400000009-W</td>
<td class="grdItemClass">
<span id="gvPOItems_lblPOItemID_0">
1162934PLN44532493
</span>
</td>
<td class="grdItemClass">
Small Wonder Training Set White - 300 ml
</td>
<td class="grdItemClass">
0 Months+, BPA Free, This training set is simple, easy-to-use and can be used for both girls and boys
</td>
<td class="grdItemClass">110.00</td>
<td class="grdItemClass">13.20</td>
<td class="grdItemClass">0.00000000000</td>
<td class="grdItemClass">96.80</td>
<td class="grdItemClass">
<span id="gvPOItems_lblQuantity_0">1</span>
</td>
<td class="grdItemClass">96.80</td>
<td class="grdItemClass"> </td>
<td class="grdItemClass"> </td>
<td>
<select name="gvPOItems$ctl02$ddlStatus" id="gvPOItems_ddlStatus_0">
<option value="0">Select</option>
<option value="Accepted">Accepted</option>
<option value="OutOfStock">OutOfStock</option>
</select>
<span id="gvPOItems_RequiredFieldValidator1_0" style="display:none;">
*
</span>
</td>
<td class="grdItemClass">48</td>
</tr>
</tbody>
我想在列获得的复选框的名字ex: gvPOItems$ctl02$cbxForShipping
与XPath查询
我使用的代码是
<? php
function xpath($content) {
$dom = new DOMDocument();
$dom->strictErrorChecking = false;
$dom->loadHTML($content);
return new DOMXPath($dom);
}
$countNode = $xpath->query('//table[@id="gvPOItems"]//tr');
for($i=0;$i<=$countNode->length;$i++){
$q= '//table[@id="gvPOItems"]/tr['.$i.']//td';
$node = $xpath->query($q);
var_dump($node->item(0));
}
但是,我得到的输出是
object(DOMNodeList)#169 (1) {
["length"]=> int(17)
}
什么应该是正确的查询获取列中的所有复选框的名称?
复选框名称是未知的,我想要一个查询返回在第0列的每一行中的复选框的名称。 –
我已经更新了解决方案。现在,它将获取所有复选框并显示其名称 – Richard
,但是即使文档不在表格中,也不会获得文档中的所有复选框名称? –