Exemples E4X

E4X rend les scripts axés sur XML extrêmement simples.

Exemples E4X

comme exemple, nous allons travailler avec un document XML représentant une commande.

le document XML ressemble à cela :

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

si nous stockons ce document XML dans une chaîne de caractères nommée txt, alors en écrivant les instructions JavaScript suivantes, nous pouvons le charger dans l'objet XML nommé order :

var order = new XML(txt)

ou bien nous pouvons directement utiliser le document XML pour affecter une valeur à la variable de l'objet 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>

Gérer les données :

Calculer le prix :

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

Afficher le nom complet du client :

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

Ajouter un nouveau projet :

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

Afficher le numéro de commande :

document.write(order.@id)

Si il y a plusieurs commandes, calculer le prix total :

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