[xforms,exist] récupérer un attribut d'une balise <xf:repeat> ?

récupérer un attribut d'une balise <xf:repeat> ? [xforms,exist] - XML/XSL - Programmation

Marsh Posté le 12-01-2010 à 17:44:06    

Bonjour à tous,
 
Je me tourne vers vous parce que ca fais un petit moment que je bloque sur une instruction et j'en vois vraiment pas la solution :(  
 
Je dois réaliser un pseudo site marchand avec affichage d'un catalogue / d'un panier (au choix de la personne) en utilisant une base de donnée exist. J'ai donc mon fichier xml contenant la liste de mes produits (code à la fin du poste) que je charge pour afficher mes données. J'utilise donc l'instruction <xf:repeat> en lui précisant ce que j'utilise pour acquérir les données (<xf:repeat id="displayCatalogue" nodeset="instance('catalogue')//produit"> ) et c'est la que ca se corse :
 
pour chaque article (et donc chaque ligne du repeat), je souhaite ajouter un bouton pour ajouter au panier (ce bouton est de type method="get" et appelle un script xquery dans le répertoire d'exist, script qui fonctionne). Pour pouvoir rajouter un article au panier, il me faut sa référence. J'ai donc tenté un  
 

Code :
  1. <xf:submit submission="addToCart">
  2.      <xf:setvalue bind="refSelected" value="instance('catalogue')//produit[index('displayCatalogue')]/reference" />
  3.      <xf:label>Ajouter au panier</xf:label>
  4.    </xf:submit>


 
mais ma référence reste désespérément vide dans mon script xquery. (ca marche en remplaçant "instance('catalogue')//produit[index('displayCatalogue')]/reference" par un nombre par contre).  
 
Vous avez déjà été confronté à ce type de problème ?
 
Merci d'avance !
 

Code :
  1. <produits>
  2. <produit>
  3.  <reference>article1</reference>
  4.  <libelle>libelle</libelle>
  5.  <prix>9.90</prix>
  6. </produit>
  7. </produits>


Message édité par xoupix le 12-01-2010 à 17:45:16
Reply

Marsh Posté le 12-01-2010 à 17:44:06   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed