2016-08-29 8 views
0

敵例: HTML:XPathのノードから2つ以上の属性を読み取る方法は?

<div id="1" class="op" style='display: none;'> 
<h4>a</h4> 
<h4 >b</h4> 
</div> 

問合せ:

$elements = $xpath->query("//div[@id='1']@style='display:none;']/@id/@style"); 


echo @id 
echo @style 

が、動作しません!

+0

あなたは決算 '['と ' '表示:なし;' 逃している!' == ' '表示:なし; '' – Ghost

答えて

0

あなたはあなたのクエリに[を逃すタイプミスがあり、normalize-spaceを使用します。

$elements = $xpath->query("//div[@id='1'][normalize-space(@style = 'display: none;')]"); 
if($elements->length > 0) { 
    echo $elements->item(0)->getAttribute('class'); 
    // foreach($elements as $e) { 

    // } 
} 
関連する問題