E4X eksempel

E4X gør skriptning for XML meget enkel.

E4X eksempel

som et eksempel vil vi arbejde med et XML-dokument, der repræsenterer en ordre.

et XML-dokument ligner dette:

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

hvis vi lagrer dette XML-dokument i en streng med navnet txt, kan vi indlæse det i et XML-objekt med navnet order ved at skrive følgende JavaScript-sætning:

var order = new XML(txt)

eller vi kan direkte bruge XML-dokumentet til at tildele værdi til denne XML-objektvariabel:

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>

Arbejd med data:

Beregn pris:

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

Vis kundens fulde navn:

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

Tilføj nyt element:

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

Vis ordrenummer:

document.write(order.@id)

Hvis der er flere elementer i ordren, beregn samlet pris:

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