Thorsten F.: und xml und JS

Hallo Leute,

ich hatte mal eine Javascript-Funktion mit der ich eine XSL- und eine XML-Datei automatisch in eine HTML "umwandeln" konnte.

Also eine Html Datei in der nur Javascript-Code stand und die mir beim Aufruf die entsprechende XSL und XML einlas und eine HTML ausgab.

Nur finde ich den Code nicht wieder und ich weiß auch, dass ich mir den nicht mehr selber zusammenreimen kann.

Weiß jemand Rat?

Gruß,
Thorsten F.

  1. Hallo,

    Nur finde ich den Code nicht wieder und ich weiß auch, dass ich mir den nicht mehr selber zusammenreimen kann.

    In diesem Beispiel ist eine MSXML-Umsetzung enthalten (zum Testen ggf. lokal verwenden).

    MfG, Thomas

  2. Hallo,

    ich hatte mal eine Javascript-Funktion mit der ich eine XSL- und eine XML-Datei automatisch in eine HTML "umwandeln" konnte.

    Also eine Html Datei in der nur Javascript-Code stand und die mir beim Aufruf die entsprechende XSL und XML einlas und eine HTML ausgab.

    Nur finde ich den Code nicht wieder und ich weiß auch, dass ich mir den nicht mehr selber zusammenreimen kann.

    Siehe unten!

    Grüße
    Thomas

    ----------------------------------------------
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
     "http://www.w3.org/TR/html4/loose.dtd">
    <html>
     <head>
      <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
      <title>XML-XSL-Transformation aus HTML mittels Javascript ausf&uuml;ren</title>
      <script language="JavaScript" type="text/javascript">
       var XMLDatei = "javascript.xml"; // Pafad zur XML-Datei
       var XSLDatei = "javascript.xsl"; // Pafad zur XML-Datei
       var XMLEingabe;
       var XSLEingabe;
       var HTMLAusgabe;

    function transformation() {
        // Abfrage für den Internet Explorer
        if (window.ActiveXObject) {
         // XML laden
         XMLEingabe = new ActiveXObject("MSXML2.DOMDocument");
         XMLEingabe.async = false;
         XMLEingabe.load(XMLDatei);

    // XSL laden
         XSLEingabe = new ActiveXObject("MSXML2.DOMDocument");
         XSLEingabe.async = false;
         XSLEingabe.load(XSLDatei);

    // generierten HTML-Code ausgeben
         HTMLAusgabe = XMLEingabe.transformNode(XSLEingabe.documentElement);
         document.getElementById("ausgabe").innerHTML = HTMLAusgabe;
        }
        // Abfrage für Mozilla / Netscape
        else if (window.ChromeWindow) {
         // Im Mozilla erst XSL laden
         var Processor = new XSLTProcessor();
         XSLEingabe = new XMLHttpRequest();
         XSLEingabe.open("GET", XSLDatei, false);
         XSLEingabe.send(null);
         XSLEingabe = XSLEingabe.responseXML;
         Processor.importStylesheet(XSLEingabe);

    // XML laden
         XMLEingabe = new XMLHttpRequest();
         XMLEingabe.open("GET", XMLDatei, false);
         XMLEingabe.send(null);
         XMLEingabe = XMLEingabe.responseXML;

    // generierten HTML-Code ausgeben
         HTMLAusgabe = Processor.transformToFragment(XMLEingabe, document);
         document.getElementById("ausgabe").appendChild(HTMLAusgabe);
        }
         else
          alert("Ihr Browser unterstützt keine XML-XSL-Transformation");
       }
      </script>
     </head>

    <body onload="transformation();">
      <h1>XML-XSL-Transformation aus HTML mittels JavaScript ausf&uuml;ren</h1>
      <h2>Ergebnis der Transformation:</h2>
      <hr>
      <div id="ausgabe"></div>
      <hr>
     </body>
    </html>