Accueil > > > TRI DYNAMIQUE XML SOUS FIREFOX
TRI DYNAMIQUE XML SOUS FIREFOX
Information sur la source
Description
Voilà, on voit souvent l'accès a un code de tri pour IE avec des objets ActiveX , mais ils ne fonctionnent pas sous Firefox. Mon code est donc un tri dynamique a partir d'un feuille XML et XSLT qui fonctionne sous Firefox.
Source
- PAGE HTML
-
- <html>
- <head>
- <script type="text/javascript">
- var processor;
- var xslt;
- var xmlDoc;
-
- function tri(field,order) {
- processor.setParameter(null,"field", field);
- processor.setParameter(null,"order", order);
- var resultat = processor.transformToFragment(xmlDoc,document);
- document.body.innerHTML = ""
- document.body.appendChild(resultat);
- }
-
- function tri_init(field,order) {
- xslt= document.implementation.createDocument("", "", null);
- xslt.async=false;
- xslt.load("test-xslt.xml");
-
- processor =new XSLTProcessor();
- processor.importStylesheet(xslt);
- xmlDoc= document.implementation.createDocument("", "", null);
- xmlDoc.async=false;
- xmlDoc.load("test.xml");
-
- tri(field,order);
- }
- </script>
- </head>
- <body>
- <script type="text/javascript">
- tri_init('name', 'ascending');
- </script>
- </body>
- </html>
-
- FEUILLE DE STYLE XSLT :test-xslt.xml
-
- <?xml version="1.0" encoding="UTF-8"?>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output method="html" indent="yes"/>
-
- <xsl:param name="field"/>
- <xsl:param name="order"/>
-
- <xsl:template match="persons">
- <table>
- <xsl:variable name="neworder">
- <xsl:if test="$order='ascending'">descending</xsl:if>
- <xsl:if test="$order='descending'">ascending</xsl:if>
- </xsl:variable>
-
- <tr><th><a href="javascript:tri('name','{$neworder}')">name</a></th><th><a href="javascript:tri('phone','{$neworder}')">phone number</a></th></tr>
- <xsl:for-each select="person">
- <xsl:sort select="*[name()=$field]" order="{$order}"/>
- <tr><td><xsl:value-of select="name"/></td><td><xsl:value-of select="phone"/></td></tr>
- </xsl:for-each>
- </table>
- </xsl:template>
- </xsl:stylesheet>
-
- FEUILLE XML: test.xml
-
- <?xml version="1.0" encoding="UTF-8"?>
- <persons>
- <person>
- <name>
- toto
- </name>
- <phone>
- 1122334455
- </phone>
- </person>
- <person>
- <name>
- titi
- </name>
- <phone>
- 3344556677
- </phone>
- </person>
- <person>
- <name>
- tata
- </name>
- <phone>
- 2233445566
- </phone>
- </person>
- </persons>
PAGE HTML
<html>
<head>
<script type="text/javascript">
var processor;
var xslt;
var xmlDoc;
function tri(field,order) {
processor.setParameter(null,"field", field);
processor.setParameter(null,"order", order);
var resultat = processor.transformToFragment(xmlDoc,document);
document.body.innerHTML = ""
document.body.appendChild(resultat);
}
function tri_init(field,order) {
xslt= document.implementation.createDocument("", "", null);
xslt.async=false;
xslt.load("test-xslt.xml");
processor =new XSLTProcessor();
processor.importStylesheet(xslt);
xmlDoc= document.implementation.createDocument("", "", null);
xmlDoc.async=false;
xmlDoc.load("test.xml");
tri(field,order);
}
</script>
</head>
<body>
<script type="text/javascript">
tri_init('name', 'ascending');
</script>
</body>
</html>
FEUILLE DE STYLE XSLT :test-xslt.xml
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>
<xsl:param name="field"/>
<xsl:param name="order"/>
<xsl:template match="persons">
<table>
<xsl:variable name="neworder">
<xsl:if test="$order='ascending'">descending</xsl:if>
<xsl:if test="$order='descending'">ascending</xsl:if>
</xsl:variable>
<tr><th><a href="javascript:tri('name','{$neworder}')">name</a></th><th><a href="javascript:tri('phone','{$neworder}')">phone number</a></th></tr>
<xsl:for-each select="person">
<xsl:sort select="*[name()=$field]" order="{$order}"/>
<tr><td><xsl:value-of select="name"/></td><td><xsl:value-of select="phone"/></td></tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
FEUILLE XML: test.xml
<?xml version="1.0" encoding="UTF-8"?>
<persons>
<person>
<name>
toto
</name>
<phone>
1122334455
</phone>
</person>
<person>
<name>
titi
</name>
<phone>
3344556677
</phone>
</person>
<person>
<name>
tata
</name>
<phone>
2233445566
</phone>
</person>
</persons>
Conclusion
Merci pour votre lecture. Allez visiter ma page web http://stela86.free.fr
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
menu dynamique [ par mamy ]
Bonjour,voilà je dois créer une page web pour un site de vente en lignesur ma page d'accueil je vais afficher le menu avec les grandes catégories de p
Formulaire oui, mais dynamique ! [ par jpinneau ]
Bonjour, j'ai un formulaire, dont les champs Dynamique tel que les champs nécessaires sont dans une base de données.Lors de l'affichage de la page, je
Positionnement dynamique d'un DIV [ par jeanne38 ]
Bonjour, Ma page est générée par ASP, et sa longueur peut varier selon l'utilisateur. Elle a des fleches (images) qui, quand on clique dessus, affiche
recuperer le contenu d'une variable dynamique [ par raincevent ]
/*Salut,si quelqu'un peu me dépanner pour cette fonction qui me permettré de verifier un formulaire dynamique.En effet chaque variable "testx,v_total_
Excel et macro pour web dynamique [ par fcdconnect ]
Bonjour,Peut on convertir une feuille de calcul comportant des macros en une page web dynamique de type Xml ou encore avec du javascript...serait t'il
Tablo HTML dynamique [ par bside8 ]
Bonjour,je souhaite rendre dynamique un tableau HTML.L'objectif est de mettre en surbrillance la ligne du tablo sur laquelle pointe la souris.Je ne sa
Menu dynamique [ par bside8 ]
Bonjour,je souhaite réaliser un menu somme toute classique consistant à faire apparaître un menu détaillé lors du passage de la souris sur l'un des it
Contenu dynamique [ par bside8 ]
Bonjour,je voudrais, avec des flèches '-' et '+' incrémenter ou décrémenter dynamiquement une valeur :- valeur +Comment je dois m'y prendre ?Merci
Création d'une galerie d'images dynamique [ par joujou0000 ]
j ai besoin de votre aide s-v-p, je suis debutant et je veux créer un site web contenant une galrie de photos dynamique avec du XHTML et du JAVASCRIPT
tableau avec tri dynamique [ par rcedric ]
Salut a tous,voila mon probleme; je cherche à afficher un tableau et que lorsqu l'on clic sur le libellé le tableau est trié et réafficher dynamiqueme
|
Derniers Blogs
PRATIQUE DE SILVERLIGHT PAR ERIC AMBROSIPRATIQUE DE SILVERLIGHT PAR ERIC AMBROSI par MPOWARE
Je viens de finir la lecture du dernier livre d'
Eric Ambrosi
Son livre donne une approche pratique de Silverlight qui sera aussi bien comprise par le développeur que par le designeur.
Tous les aspects du développement RIA sont abordés: animations, 3...
Cliquez pour lire la suite de l'article par MPOWARE APPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NETAPPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NET par odewit
2 déclinaisons de Silverlight et 2 déclinaisons de Mono permettent dorénavant (ou permettront prochainement) de développer des applications .NET mobiles pour les principales plates-formes du marché :
Silverlight pour Symbian, basé sur Silverlight 2...
Cliquez pour lire la suite de l'article par odewit ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2 par ROMELARD Fabrice
Avec la dernière génération du lecteur MP3 de Microsoft, le ZUNE HD, Microsoft a publié une nouvelle version du logiciel pour PC. Ainsi, je me suis décidé à installer celle-ci sur mon Tablet PC ACER, comme toujours le logiciel est donc tél...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice L'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIESL'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIES par odewit
La tendance est aux interfaces naturelles (NUI), et le keynote de Bill Buxton au MIX l'a bien souligné.
La charte graphique et ergonomique de Windows Phone 7 a donc été entièrement repensée en vue d'obtenir un maximum d'efficacité sur ce point. En re...
Cliquez pour lire la suite de l'article par odewit
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|