Partage
  • Partager sur Facebook
  • Partager sur Twitter

comment faire un tableau associatif?

    11 août 2010 à 11:31:02

    Bonjour j'ai un xml dont voici le modèle
    <patient>
      <examen>
      <code_examen>1</code_examen> 
      <date_examen>2006-09-29 11:06:00</date_examen> 
      <code_patient>1</code_patient> 
      <code_site>2</code_site> 
                       .
                       .
                       .
      </examen>
      <examen>
      <code_examen>2</code_examen> 
      <date_examen>2007-03-29 12:16:00</date_examen> 
      <code_patient>2</code_patient> 
      <code_site>3</code_site> 
                       .
                       .
                       .
      </examen>
              .
              .
              .
    </patient>
    
    et je veux faire un tableau de tableau comme cecihttp://img694.imageshack.us/img694/1935/tableauh.png voici mon code
    function Examen()
    {
    	var tabExamen = new Array();
     
        this.initExamen = function(xhr) { 
     
        	 var docXmlPatientFolder= xhr.responseXML.documentElement;
        	 var childNodesExamen;
        	 var tabExamenNode;
        	 var itemsMyNodeName;
        	 var myNodeName;
        	 var myNodeValue;
        	 var itemsCodeExamen; 
        	 var codeExamenValue;
        	 var itemsExamen = docXmlPatientFolder.getElementsByTagName("examen");// recuperation de toutes les balises examen
        	 
        	  for(var i=0; i<itemsExamen.length; i++)
              {
                   childNodesExamen=itemsExamen[i].childNodes;//pour chaque balise examen on recupère tous ses enfants
                   itemsCodeExamen = itemsExamen[i].getElementsByTagName("code_examen");
                   codeExamenValue=itemsCodeExamen.item(0).firstChild.data;
                   tabExamenNode= new Array();//reinitialise le tableau avec les noeuds fils de chaque examen
                   for(var j=0; j<childNodesExamen.length; j++)
                   {
                	    myNodeName=childNodesExamen[j].nodeName
                	    itemsMyNodeName = childNodesExamen[j].getElementsByTagName(myNodeName);
                	    myNodeValue=itemsMyNodeName.item(0).firstChild.data;
                        tabExamenNode[myNodeName] = myNodeValue;//tableau associatif sur tous les noeuds fils de chaque examen
                   }
                   ///////TABLEAU DE TABLEAU 
                   tabExamen[codeExamenValue] =tabExamenNode;
              }
     
        } 
          
     }
    
    voici la partie du code dont je n'ai pas l'assurance
    tabExamen[codeExamenValue] =tabExamenNode;
    
    En effet je ne sais pas s'il est possible de mettre dans une case d'un tableau un autre tableau comme donnée.
    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      11 août 2010 à 13:21:18

      J'ai pas trop chercher à comprendre ton code mais en tous cas il est possible de faire des tableau associatifs en javascript avec l'objet natif de javascript dans lequel on peut mettre un peu tout se qu'on veux, des fonctions, des tableau, d'autre objets natif js etc...
      Et ça se déclare comme ça :
      var assocArray = {
          uneVariable : "truc",
          uneFonction : function(arg) {
              alert(arg);
          }
      };
      
      • Partager sur Facebook
      • Partager sur Twitter

      comment faire un tableau associatif?

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown