Accueil > > > HTML,XSLT ET XML LIRE LES DONNEES D'UN XML POUR AFFICHAGE SOUS FORME DE TABLEAU GRACE A UN SCRIPT XSLT EN LOCAL
HTML,XSLT ET XML LIRE LES DONNEES D'UN XML POUR AFFICHAGE SOUS FORME DE TABLEAU GRACE A UN SCRIPT XSLT EN LOCAL
Information sur la source
Description
Je ne sais pas si ma source est en bonne place (se serait plustôt une astuce). Les fichiers XML prennent de plus en plus d'importance sur le web par leur façon de présenter les données sous forme structurée mais aussi permettant un chargement rapide par certaines applications. Le principe : On se propose de lire les données issues d'un fichier XML sous forme de noeuds et de les afficher dans une page HTML sous forme de tableau. Pour cela on utilise un script XSLT dans la page html et on ne touche pas au XML (ce qui est très pratique lorsqu'on a plusieurs milliers de fichiers XML produits par une base de données par exemple).
Source
- script language="JavaScript">
- AfficheDocXML();
- function AfficheDocXML(){
-
- var Document;
- Document = new ActiveXObject("Microsoft.XMLDOM");// on fait appel à la DOM pour parser le XML !
- Document.async = "false"; // on lit en synchrone
-
- if(Document.load("catalogue.xml")){// au chargement on met en forme puis on place dans les cellules
- document.write("<TABLE BORDER=1 CELLPADDING=0>");
- document.write("<THEAD><TH>ID</TH><TH>Date</TH><TH>Nom</TH></THEAD>");
- for(i=0;i<Document.documentElement.childNodes.length;i++){
- document.write ("<TR ALIGN=center>");
- for(j=0;j<= 2;j++){
- document.write ("<TD>");
- document.write (Document.documentElement.childNodes(i).childNodes(j).text);
- document.write ("</TD>");
- }
- document.write ("</TR>");
- }
- document.write ("</TABLE>");
- }else{alert("fichier pas trouvé !");// si pas de fichier, alerte !
- }
- }
- </script>
script language="JavaScript">
AfficheDocXML();
function AfficheDocXML(){
var Document;
Document = new ActiveXObject("Microsoft.XMLDOM");// on fait appel à la DOM pour parser le XML !
Document.async = "false"; // on lit en synchrone
if(Document.load("catalogue.xml")){// au chargement on met en forme puis on place dans les cellules
document.write("<TABLE BORDER=1 CELLPADDING=0>");
document.write("<THEAD><TH>ID</TH><TH>Date</TH><TH>Nom</TH></THEAD>");
for(i=0;i<Document.documentElement.childNodes.length;i++){
document.write ("<TR ALIGN=center>");
for(j=0;j<= 2;j++){
document.write ("<TD>");
document.write (Document.documentElement.childNodes(i).childNodes(j).text);
document.write ("</TD>");
}
document.write ("</TR>");
}
document.write ("</TABLE>");
}else{alert("fichier pas trouvé !");// si pas de fichier, alerte !
}
}
</script>
Conclusion
Bien entendu, si vous avez un fichier XML important, il y aura un temps de chargement non négligeable ! Pour diminuer ce temps de chargement, passee les noeuds sous forme d'attributs de cette forme :
<Commandes> <Ordre id ="1" date="4/12/2002" name = "hélène Marqué"/>
<Ordre id ="2" date="4/12/2002" name = "Jean Bonbeurre"/>
</Commandes>
Il faudra réécrire le script pour lire les attributs des noeuds (of course). Cette façon de coder le XML vous permettra outre un gain de place sur le fichier XML, un temps de chargement augmenté de 25%
Si un codeur C++ ou Delphi pouvait offrir une source permettant en 1 clic de réaliser cette transformation des noeuds enfants en attributs des noeuds parents, ce serait un réel outil en local !!! Je vois ce prog un peu comme un batch qui scann les fichiers XML d'un dossier pour en faire l'inventaire dans un fichier result.xml par exemple. Qui à l'ouverture de chaque fichiers XML du répertoire, regarderait si l'encodage est bien UTF-8 (auquel cas il remplacerait cette 1ère ligne par le codage UTF-8) puis circulerait sur tous les noeuds parents de 1er niveau pour transformer les noeuds enfants en attributs du noeuds parents !!!
Je pense que ce serait une super bonne source utile (un .exe, un clic et zooooouuuu).
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
problème javascript - XML [ par iraho ]
Bonjour, j'ai un souci avec pour faire du xml dynamique avec javascript et j'aurais besoin d'aide. En fait, j'ai code associant xml, xslt et javascrip
qu'utilisez-vous pour [d]html+javascript ? [ par bultez ]
Bonjour à toutes et à tous,perso pour faire du [d]html+javascript ( et même php... et autres )j'utilise bêtement un éditeur à coloration syntaxique (
Récupération de valeur html avec Javascript [ par Eckmoule ]
Bonjour tout le monde, Je vais tenter d'expliquer mon soucis du mieux possible. J'ai une liste de lignes comprenant plusieurs valeurs (Prix, temps, e
Comment afficher une page HTML via javascript [ par sloyvy ]
javascript dans HTML [ par godelet ]
Bonjour,je n'arrive pas à voir mon alert lors du onClick dans la page html, le code est le suivant :<script type="text/javascript" src="/adsl/inf
insertion javascript dans l'HTML [ par Arniould ]
Bjr, je veux que mon script javascript insère une ligne dans mon HTML,j'ai utilisé la ligne suivante pour qu'il me renvoie ma ligne:self.location.href
PopUp html lancée à partir de flash par fonction javascript [ par totorienabattre ]
Bonjour tout le monde, Voilà déjà 3 jours que j'écume le web à la recherche de "LA" solution à mon problème ! J'espère vraiment que vous allez pouvoir
Parser un XML en javascript (=xml to array) [ par Logan ]
Bonjour,Je suis en train de realiser un petit chat en ajax, et je dois donc parser un xml pour en recuperer des valeurs en javascript...je vous montre
Ecrire définitivement dans page html [ par ads31 ]
Bonjour,je voudrai savoir s'il est possible que l'on conserve ce que l'on ecrit via du javascript dans une page HTML.La page est en HTML et en javascr
Problème d'encodage HTML et Javascript [ par demorex6 ]
Salut à tous! Je suis en train de realiser une petite application multilingue en php-Javascript-Mysql. J'ai créé un fichier pour la langue française
|
Derniers Blogs
SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|