2017-05-24 128 views
1

我想选择所有孩子,即父母dividtestRoot的图像。结构未知。为了理解目的,我在这里简化了它。如果是XPath表达式,那将会很棒。XPath按属性选择具有特定父节点的所有孩子

 <div id="testRoot"> 

<div class="panel"> 
        <a tabindex="-1" href="/mafuae/en/p/1236018"> 
         <picture> 
          <source srcset="/medias/sys_master/images/images/h4e/hf5/8820729217054/NikonSlr-H-Tablet.jpg" media="(min-width: 768px)"> 
          <img src="" alt="NikonSlr_H_Desktop.jpg"> 
         </source> 
         </source></source></picture> 
        </a> 
       </div> 
      <div class="panel"> 
        <a tabindex="-1" href="/mafuae/en/storespromotions"> 
         <picture> 
          <source srcset="/medias/sys_master/images/images/h73/hd7/54/Ramadan2-14thMay-Tablet.jpg" media="(min-width: 768px)"> 
          <img src="" alt="Ramadan2_14thMay_Desktop.jpg"> 
         </source></source></source></picture> 
        </a> 
       </div> 
</div> 

这是我尝试,但...

doc.DocumentNode.SelectNodes("//div[@id='hero']/div/div") 

回答

4

对于具有hero//div[@id='hero']一个id属性div元件,如下这些XPath表达式将选择的元素:

  • //div[@id='hero']/*将选择其所有儿童元素。
  • //div[@id='hero']/img将选择其全部儿童img元素。
  • //div[@id='hero']//*将选择其所有后代元素。
  • //div[@id='hero']//img将选择其全部后代img元素。
+0

我做了很长的一段路,但你让我更简单:)。 '// div [@ id ='hero'] // img'是我寻找的代码 –

相关问题