Простой HTML DOM, как получить доступ к элементам только на верхнем уровне - PullRequest
0 голосов
/ 04 марта 2011

Я застрял с вопросом subj.это пример кода: <pre> include('./simple_html_dom.php'); $html = str_get_html(" <code><cols> <br> <col> content1 <br> content1 </col> <br> <col> <br> content2 <br> content2 </col> <br> </cols> ");

foreach ($ html-> find ('cols br') как $ br) {echo $ br-> outertext;} это дает мне все теги <br> внутри <cols> тег, но мне нужны <br> только на верхнем уровне.
$html->find('cols > br') также не работает (

ОБНОВЛЕНИЕ решить это: foreach($html->find('cols') as $cols_tag_content) { for($node = 0; $node < count($cols_tag_content->children()); $node++) { if($cols_tag_content->children($node)->tag == "br") { //doing whatever you want with br. i just remove it $cols_tag_content->children($node)->outertext = ""; } } } это работает с<br> и <br />

Ответы [ 2 ]

1 голос
/ 18 февраля 2012
foreach($html->find('cols') as $cols_tag_content) {
    for($node = 0; $node < count($cols_tag_content->children()); $node++) {
        if($cols_tag_content->children($node)->tag == "br") {
            //doing whatever you want with br. i just remove it
            $cols_tag_content->children($node)->outertext = "";
        }
    }
}
0 голосов
/ 04 марта 2011

Вы пробовали 'cols> br'? Я думаю, что «cols> br» может скинуть.

См. http://www.w3schools.com/css/sel_element_gt.asp также для получения дополнительной информации.

Я думаю, что jQuery допускает интервал.

UPDATE

Я реструктурировал ваш псевдо-HTML выше, чтобы использовать div с классами для следующего:

<div class="cols">
    <br />
    <div class="col">
        content1
        <br />
        content1
    </div>
    <br />
    <div class="col">
        <br />
        content2
        <br />
        content2
    </div>
    <br />
</div>

Выполнение следующего скрипта jQuery работает сейчас:

var brs= $('div.cols > br');
alert("Found "+brs.length+" brs");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...