Gli ultimi tutorial di sviluppo web
 

Esempi XPath


Cerchiamo di imparare un po 'la sintassi di base XPath, cercando in alcuni esempi.


L'esempio documento XML

Useremo il seguente documento XML negli esempi che seguono.

"Books.xml":

<?xml version="1.0" encoding="UTF-8"?>

<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>

Visualizza il "books.xml" file nel browser .


Caricamento del documento XML

Utilizzando XMLHttpRequest per caricare documenti XML è supportata in tutti i browser moderni.

Codice per la maggior parte dei browser moderni:

var xmlhttp=new XMLHttpRequest()

Codice per i vecchi browser Microsoft (IE 5 and 6) :

var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")

Selezione nodi

Purtroppo, ci sono diversi modi di trattare con XPath in Internet Explorer e altri browser.

Nei nostri esempi abbiamo incluso il codice che dovrebbe funzionare con la maggior parte dei browser principali.

Internet Explorer utilizza le selectNodes() metodo per selezionare i nodi del documento XML:

xmlDoc.selectNodes( Firefox, Chrome, Opera e Safari utilizzano il evaluate() metodo per selezionare i nodi del documento XML:

xmlDoc.evaluate( Seleziona tutti i titoli

L'esempio seguente seleziona tutti i nodi del titolo:

Esempio

/bookstore/book/title
Prova tu stesso "

Selezionare il titolo del primo libro

L'esempio seguente seleziona il titolo del primo nodo libro sotto l'elemento libreria:

Esempio

/bookstore/book[1]/title
Prova tu stesso "

Selezionare tutti i prezzi

L'esempio seguente seleziona il testo da tutti i nodi di prezzo:

Esempio

/bookstore/book/price[text()]
Prova tu stesso "

Selezionare i nodi di prezzo con il prezzo> 35

L'esempio seguente seleziona tutti i nodi prezzo con un prezzo superiore 35:

Esempio

/bookstore/book[price>35]/price
Prova tu stesso "

Selezionare i nodi titolo con prezzo> 35

L'esempio seguente seleziona tutti i nodi titolo con un prezzo superiore a 35:

Esempio

/bookstore/book[price>35]/title
Prova tu stesso "