我想在html页面中提取所有以 ctl00 $ ctl00 $ mainContent $ bodyContent $ chkRitira _ 开头的属性名称,并检查输入标记是否已选中。例如,我有这段html代码:
<tr>
<td operazione="ritira"><input id="ctl00_ctl00_mainContent_bodyContent_chkRitira_852428" type="checkbox" name="ctl00$ctl00$mainContent$bodyContent$chkRitira_852428" /><label for="ctl00_ctl00_mainContent_bodyContent_chkRitira_852428">Ritira</label></td>
</tr>
<tr>
<td operazione="ritira"><input id="ctl00_ctl00_mainContent_bodyContent_chkRitira_852429" type="checkbox" name="ctl00$ctl00$mainContent$bodyContent$chkRitira_852429" /><label for="ctl00_ctl00_mainContent_bodyContent_chkRitira_852429"> Ritira</label></td>
</tr>
我要检查是否已检查以 ctl00 $ ctl00 $ mainContent $ bodyContent $ chkRitira _ 开头的每个输入检查以及属性名称,然后:
ctl00$ctl00$mainContent$bodyContent$chkRitira_852428
ctl00$ctl00$mainContent$bodyContent$chkRitira_852429
我尝试过:
$xpR=new DOMXPath( $dom_richieste_r );
$colR = $xpR->query( '//input[@name="ctl00$ctl00$mainContent$bodyContent$chkRitira_"]' );
但这会把节点的内容还给我。
答案 0 :(得分:1)
//input[contains(@name,'ctl00$ctl00$mainContent$bodyContent$chkRitira_')]
答案 1 :(得分:1)
有一个starts-with
可以通过以下方式实现
//input[starts-with(@id, "ctl00$ctl00$mainContent$bodyContent$chkRitira_")]/@name