Esempi E4X

E4X rende lo scripting per XML estremamente semplice.

Esempi E4X

Come esempio, lavoreremo con un documento XML che rappresenta un ordine.

Un documento XML assomiglia a questo:

<order>
<date>2005-08-01</date>
<customer>
  <firstname>John</firstname>
  <lastname>Johnson</lastname>
</customer>
<item>
  <name>Maxilaku</name>
  <qty>5</qty>
  <price>155.00</price>
</item>
</order>

Se memorizziamo questo documento XML in una stringa chiamata txt, possiamo caricarlo nell'oggetto XML chiamato order scrivendo il seguente comando JavaScript:

var order = new XML(txt)

Ora possiamo assegnare direttamente un documento XML a questa variabile oggetto XML:

var order = new XML()
order=<order id="555">
<date>2005-08-01</date>
<customer>
  <firstname>John</firstname>
  <lastname>Johnson</lastname>
</customer>
<item>
  <name>Maxilaku</name>
  <qty>5</qty>
  <price>155.00</price>
</item>
</order>

Lavorare con i dati:

Calcola il prezzo:

var total=order.item.qty * order.item.price

Mostra il nome completo del cliente:

document.write(order.customer.lastname)
document.write(",")
document.write(order.customer.firstname)

Aggiungi nuovo progetto:

order.item+=
<item>
  <name>Pavlova</name>
  <qty>10</qty>
  <price>128.00</price>
</item>

Mostra il numero di ordine:

document.write(order.@id)

Se ci sono più ordini, calcola il prezzo totale:

var price=0
for each (i in order.item)
  {
  price+= i.qty*i.price
  }