Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

From: Paul-Marie (paulmarie.dupuis@cgey.com)
Date: 22/08/2001 - 08:02


Bonjour
J'ai tapé une fonction dans mon script pour le déplacement de mes noeuds
col, ça donne ça :

function deplacer_col(pos_col) {

 // pos_col est la position dans l'élément ligne des noeuds col à déplacer

 // Déclarations des objets
 var noeuds_ligne = new Object()
 var noeud_col = new Object()
 var noeud_ref = new Object()
 var noeud_temp = new Object()

 dom_xml.setProperty("SelectionLanguage", "XPath");

 // Selection des noeuds ligne
 noeuds_ligne = dom_xml.documentElement.selectNodes("/data/ligne")
 nb_lignes = noeuds_ligne.length

 // Déplacement de chaque noeud col
 for (indice = 0 ; indice < nb_lignes ; indice++) {

  // Selection du noeud col à déplacer et du noeud avant lequel l'insérer
  str_XPath_col = "/data/ligne["+indice+"]/col["+pos_col+"]"
  pos_insert = pos_col + 2
  str_XPath_ref = "/data/ligne["+indice+"]/col["+pos_insert+"]"
  noeud_col = dom_xml.documentElement.selectSingleNode(str_XPath_col)
  noeud_ref = dom_xml.documentElement.selectSingleNode(str_XPath_ref)

  // Déplacement du noeud col
  noeud_temp = noeud_col.cloneNode(true)
  noeuds_ligne[indice].insertBefore(noeud_temp, noeud_ref)
  noeuds_ligne[indice].removeChild(noeud_col)
 }

document.body.innerHTML = dom_xml.transformNode(dom_xsl)
}

Seulement, je fais une erreur sur l'utilisation du insertBefore(). Le
message d'erreur sous IE est "Insert position Node must be a Child of the
Node to insert under". Il me semble pourtant que noeud_ref est bien noeud
fils de noeuds_ligne[indice].
Quelqu'un a-t-il une idée pour m'aider ?

PM

----- Original Message -----
From: "Olivier LAMY" <olivier.lamy@rtlnet.fr>
To: <xml-tech@xmlfr.org>
Sent: Tuesday, August 21, 2001 12:00 PM
Subject: [xml-tech] RE: [xml-tech] Re: [xml-tech] RE: [xml-tech] déplacement
d'éléments ds DOM

> Après, il faut réfléchir à un petit algorithme qui permet de déplacer un
ou
> plusieurs noeuds mais à mon avis il faut déplacer les moeuds un par un à
> l'aide d'une boucle.
>
> -----Message d'origine-----
> De : xml-tech-bounce@xmlfr.org [mailto:xml-tech-bounce@xmlfr.org]De la
> part de Paul-Marie
> Envoyé : mardi 21 août 2001 11:53
> À : xml-tech@xmlfr.org
> Objet : [xml-tech] Re: [xml-tech] RE: [xml-tech] déplacement d'éléments
> ds DOM
>
>
>
> OK mais c'est une manip que je dois réaliser sur chaque noeud à déplacer
> séparément ? Ou alors y a-t-il moyen de travailler sur une liste de noeuds
?
> Mon problème est d'appliquer ce déplacement du bon élément col dans tous
les
> éléments ligne du xml.
>
> Merci de votre aide
> PM
>
> ----- Original Message -----
> From: "Olivier LAMY" <olivier.lamy@rtlnet.fr>
> To: <xml-tech@xmlfr.org>
> Sent: Tuesday, August 21, 2001 11:33 AM
> Subject: [xml-tech] RE: [xml-tech] déplacement d'éléments ds DOM
>
>
> > Une solution consiste à cloner le noeud à déplacer (méthode cloneNode)
> puis
> > à insérer le noeud cloné à l'endroit voulu avec la méthode insertBefore
et
> > enfin à supprimer le noeud qui a été cloné.
> > Un simple jeu de manipulation de "pointeur" sur des noeuds en quelque
> sorte.
> >
> > -----Message d'origine-----
> > De : xml-tech-bounce@xmlfr.org [mailto:xml-tech-bounce@xmlfr.org]De la
> > part de Paul-Marie
> > Envoyé : mardi 21 août 2001 11:27
> > À : xml-tech@xmlfr.org
> > Objet : [xml-tech] déplacement d'éléments ds DOM
> >
> >
> > Bonjour,
> >
> > J'ai un XML qui ressemble à ce qui suit :
> >
> > <data>
> > <ligne>
> > <col>contenu cellule 1.1</col>
> > <col>contenu cellule 1.2</col>
> > <col>contenu cellule 1.3</col>
> > <col>contenu cellule 1.4</col>
> > </ligne>
> > <ligne>
> > <col>contenu cellule 2.1</col>
> > <col>contenu cellule 2.2</col>
> > <col>contenu cellule 2.3</col>
> > <col>contenu cellule 2.4</col>
> > </ligne>
> > etc...
> > </data>
> >
> > Dans un objet DOM de mon fichier XML, je souhaite pouvoir déplacer
les
> > colonnes de mon tableau. En particulier, comment déplacer toutes les
> noeuds
> > col en position x et les passer en position x+1 ou x-1 (afin de faire un
> > déplacement de colonne vers la droite ou vers la gauche dans mon
> affichage)
> > pour le moment, je suis parti dans mon JavaScript sur une selection du
> style
> > :
> > noeuds = dom_xml.documentElement.selectNodes(//ligne/col[position()
=
> > x])
> > mais j'ai un peu de mal à m'y retrouver. Quelqu'un peut-il m'aider ?
> >
> > Merci de votre aide.
> > PM
> >
> > --
> > Devenez redacteur <XML>fr et contribuez au developpement du
> > xml francophone (http://xmlfr.org/infos/redacteurs/) !
> >
> > Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> >
> > Cette liste est a votre disposition pour discuter en francais de
> > tout sujet technique lie a XML.
> >
> > Pour resilier votre abonnement, envoyez un message contenant
> > la commande "unsubscribe" a xml-tech-request@xmlfr.org
> > (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> >
> >
> > --
> > Devenez redacteur <XML>fr et contribuez au developpement du
> > xml francophone (http://xmlfr.org/infos/redacteurs/) !
> >
> > Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> >
> > Cette liste est a votre disposition pour discuter en francais de
> > tout sujet technique lie a XML.
> >
> > Pour resilier votre abonnement, envoyez un message contenant
> > la commande "unsubscribe" a xml-tech-request@xmlfr.org
> > (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
>
> --
> Devenez redacteur <XML>fr et contribuez au developpement du
> xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
> Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
>
> Cette liste est a votre disposition pour discuter en francais de
> tout sujet technique lie a XML.
>
> Pour resilier votre abonnement, envoyez un message contenant
> la commande "unsubscribe" a xml-tech-request@xmlfr.org
> (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
>
> --
> Devenez redacteur <XML>fr et contribuez au developpement du
> xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
> Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
>
> Cette liste est a votre disposition pour discuter en francais de
> tout sujet technique lie a XML.
>
> Pour resilier votre abonnement, envoyez un message contenant
> la commande "unsubscribe" a xml-tech-request@xmlfr.org
> (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)

--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !

Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).

Cette liste est a votre disposition pour discuter en francais de tout sujet technique lie a XML.

Pour resilier votre abonnement, envoyez un message contenant la commande "unsubscribe" a xml-tech-request@xmlfr.org (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)



Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement