2009-06-02 9 views
1

Firefox 3 et XML/XSLTFirefox 3 et XML/XSLT

Je suis relativement nouveau dans le développement d'applications Web avec le traitement côté client dans Firefox. J'ai quelques questions simples concernant l'utilisation de XML/XSLT dans Firefox. J'envoie un document XML initial avec une référence XSLT au navigateur. Le navigateur transforme le XML en XHTML en utilisant la feuille de style XSLT référencée.

Cela fonctionne bien dans Internet Explorer 6+ et Firefox 3+. Maintenant, je dois apporter des modifications au document XML et à la feuille de style XSLT en JavaScript, puis retransformer le XML en HTML. Je ne cherche pas à créer un document XML ou à en obtenir un à partir d'une requête HTTP AJAX. Je ne suis concerné que par le document XML original envoyé au navigateur.

Avec IE, c'est clair. Dans Firefox, j'ai des difficultés probablement dues au manque de documentation. Pour effectuer une nouvelle transformation en JavaScript, vous avez besoin de deux objets et une seule opération:

Objet/Opération -> Dans Internet Explorer JavaScript

du document XML initial envoyé au navigateur -> document.XMLdocument

le document XSLT initial référencé dans le XML via xml-stylesheet -> document.XSLdocument

Transformations XML avec XSLT pour obtenir de nouvelles sortie HTML ->
document.XMLdocument.documentElement.transformNode (document.XSLdocument)

Ce que je cherche, c'est l'équivalent de ces 3 notions dans le DOM Firefox 3. J'ai fait une recherche assez exhaustive sur le web et j'ai trouvé des façons de manipuler XML mais pas avec les documents XML et XSL initiaux.

Quelqu'un peut-il me diriger dans la bonne direction? Je vous remercie.

Répondre

0

Emle - Electronic Mathematics Laboratory Equipment fichier Javascript emle_lab.js utilise parseFromString() pour créer un document à partir d'une chaîne:

var inputText = '<?xml version="1.0" encoding="UTF-8"?>' + 
    '<emle xmlns="http://emle.sf.net/emle02">' + 
    ' <lab refid="' + aLabId + '"></lab>' + 
    '</emle>'; 
    var inputDoc = new DOMParser().parseFromString(inputText, "application/xml"); 
    var xsltDoc = emleHttpGetXML('emle_lab.xsl'); 
    var processor = new XSLTProcessor(); 
    processor.setParameter(null, 'emleLang', aLang); 
    processor.importStylesheet(xsltDoc); 
    var outputDoc = processor.transformToDocument(inputDoc.firstChild); 
Questions connexes