2016-04-02 18 views
0

Bir android uygulamasında, ilk düğümündeki VervoerType öğesinin Intercity öğesinin eşit olduğu tüm ActueleVertrekTijd düğümlerini seçmeye çalışıyorum. Bunu sadece zm1 dönmek isteyeyim Bu durumdaXPath: Kardeşin çocuğu üzerinde koşulu olan düğümü seçin

<ReisMogelijkheden> 
    <ReisMogelijkheid> 
     <ActueleVertrekTijd>time1</ActueleVertrekTijd> 
     <ReisDeel> 
      <VervoerType>Intercity</VervoerType> 
     </ReisDeel 
     <ReisDeel> 
      <VervoerType>Intercity</VervoerType> 
     </ReisDeel> 
    </ReisMogelijkheid> 
    <ReisMogelijkheid> 
     <ActueleVertrekTijd>time2</ActueleVertrekTijd> 
     <ReisDeel> 
      <VervoerType>Sprinter</VervoerType> 
     </ReisDeel 
     <ReisDeel> 
      <VervoerType>Intercity</VervoerType> 
     </ReisDeel> 
    </ReisMogelijkheid> 
</ReisMogelijkheden> 

:

aşağıdaki xml yapıya sahiptir. Ben en iyi hangi altında çeşitli şeyler denedik googling birkaç saat sonra

:

/ReisMogelijkheden/ReisMogelijkheid/Reisdeel[1][child::VervoerType/self::text()='Intercity']/ActueleVertrekTijd 
/ReisMogelijkheden/ReisMogelijkheid[Reisdeel[VervoerType[text()='Intercity']]]]/ActueleVertrekTijd 

/ReisMogelijkheden/ReisMogelijkheid[Reisdeel[child::VervoerType/self::text()='Intercity']]/ActueleVertrekTijd 
/ReisMogelijkheden/ReisMogelijkheid[child::Reisdeel[child::VervoerType/self::text()='Intercity']]/ActueleVertrekTijd 

/ReisMogelijkheden/ReisMogelijkheid/Reisdeel[VervoerType[text()='Intercity']]/../ActueleVertrekTijd 

Ama bunların hiçbiri bir şey döndü. XPath hata ayıklaması zordur, çünkü hata mesajı vermez, bu yüzden şimdi takılıyorum.

cevap

3
//ReisMogelijkheid[ReisDeel[1]/VervoerType = "Intercity"]/ActueleVertrekTijd 
+0

Evet, işte bu kadar! Çift tırnakları tek tırnaklara çevirmek zorundaydım çünkü bir java String'di, ama mükemmel çalışıyor. – PHPirate

+0

Bir şey değil! Yardım ettiğim için sevindim! – splash58