Xpath php: получить значение атрибута, начиная с - PullRequest
0 голосов
/ 30 августа 2018

Я хотел бы извлечь на 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_"]' ); 

Но это возвращает мне содержимое узла.

Ответы [ 2 ]

0 голосов
/ 30 августа 2018

Существует starts-with, который вы можете реализовать, как показано ниже

//input[starts-with(@id, "ctl00$ctl00$mainContent$bodyContent$chkRitira_")]/@name
0 голосов
/ 30 августа 2018

//input[contains(@name,'ctl00$ctl00$mainContent$bodyContent$chkRitira_')]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...