Przykłady XPath
W tej sekcji, uczmy się przez przykład do jakiejś podstawowej składni XPath.
Dokumenty instancji XML
Będziemy korzystać z tego dokumentu XML w poniższym przykładzie:
"Books.xml":
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
Zobacz "Books.xml" plik w przeglądarce .
Załaduj dokument XML
Wszystkie nowoczesne przeglądarki obsługują XMLHttpRequest ładowania dokumentów XML.
Dla większości nowoczesnych przeglądarek kodu:
Dla starej przeglądarki Microsoft (IE 5 i 6) Kodeksu:
Wybierz węzeł
Niestety, Internet Explorer i inne inny sposób obchodzenia XPath.
W naszym przykładzie jest zawarty na większości głównych kodu przeglądarek.
Internet Explorer używa selectNodes () Metoda z dokumentu XML, aby wybrać węzły:
Firefox, Chrome, Opera i Safari użyć metody oceny (), aby wybrać węzły z dokumentu XML:
Zaznacz cały tytuł
Poniższe przykłady zaznaczyć wszystkie węzły tytuł:
Wybierz pierwszy tytuł książki
Poniższe przykłady wybrać elementu księgarni poniżej pierwszego węzła tytuł książki:
Nie stanowi to problemu. Powyższe przykłady różnych wyników w IE i innych przeglądarek.
Ie5 a potem [0] uznana jako pierwszy węzeł, i zgodnie z normami W3C należy [1].
Jednym z rozwiązań!
Aby rozwiązać IE5 + [0] i [1] stanowi problemu, można ustawić wybrany język XPath (SelectionLanguage).
Poniższe przykłady wybrać elementu księgarni poniżej pierwszego węzła tytuł książki:
Przykłady
xml.selectNodes("/bookstore/book[1]/title");
Spróbuj »
Zaznacz wszystkie ceny
Poniższe przykłady zaznaczyć cały cenę węzła tekstowego:
Wybierz cena jest wyższa niż cena 35 węzłów
Poniższe przykłady zaznaczyć cały cenę wyższą niż cena 35 węzłów:
Wybierz cenę węzła jest wyższa niż 35 tytuł
Poniższe przykłady wybrać wszystkie węzły tytuł ceny wyższe niż 35: