2017-02-28 2 views
0

Könnten Sie mir bitte sagen, wie Sie auf Variable in xslt zugreifen können? .Ich Variable machen in js .Ich will es Wert drucken .So ich den Variablenwert in xsl zuordnen: Variable wenn ich versuche, Variablenwert drucken es gibt mir string statt hier der Bewertung ist mein Code http://xsltransform.net/pPJ8LWbWie auf Variablen in XSLT zugreifen?

<?xml version="1.0" encoding="UTF-8" ?> 
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> 
    <xsl:output method="html" doctype-public="XSLT-compat" omit-xml-declaration="yes" encoding="UTF-8" indent="yes" /> 

    <xsl:template match="/"> 
     <hmtl> 
     <head> 
      <title>New Version!</title> 
     </head> 
     <script> 
      console.log('starte'); 
      var start = 5; 
      '<xsl:variable name="start">{start}</xsl:variable>' 
      console.log('<xsl:value-of select="$start"/>') 

     </script> 
     </hmtl> 
    </xsl:template> 


</xsl:transform> 

Erwartete Ausgabe :: 5 jede Aktualisierung

+0

machte ich einen Kommentar zu Ihrer vorherigen Frage (http://stackoverflow.com/questions/42498064/why-value-of-not-working-in-xslt-in-loop), die hier relevant ist . XSLT kann nicht auf JavaScript-Variablen zugreifen, da zu dem Zeitpunkt, an dem HTML und Javascript erstellt werden, XSLT (und XML) schon lange nicht mehr verfügbar ist. XSLT wird verwendet, um HTML (und Javascript) zu generieren, aber es wird nicht in der Verarbeitung dieses HTML verwendet. Sie sollten wirklich anfangen, indem Sie versuchen, den HTML, den Sie wollen, manuell zu schreiben und beiseite legen, bis Sie genau wissen, wie Ihr HTML und Javascript aussehen soll. –

+0

könnten Sie bitte diese Frage beantworten http://stackoverflow.com/questions/42505285/how-to-change-the-tag-name-in-xslt – user5711656

Antwort

0

Nun, ich schlage vor, können Sie wie folgt tun:

Demo - https://jsfiddle.net/skyr9999/behf2h7t/

<?xml version="1.0" encoding="UTF-8" ?> 
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> 
    <xsl:output method="html" doctype-public="XSLT-compat" omit-xml-declaration="yes" encoding="UTF-8" indent="yes" /> 

    <xsl:template match="/"> 
     <hmtl> 
     <head> 
      <title>New Version!</title> 
     </head> 
     <script> 
      console.log('starte'); 
      var start = 5; 
      document.write('<xsl:variable name="start">'+start+'</xsl:variable>'); 
      console.log("<xsl:value-of select='"+start+"'/>") 

     </script> 
     </hmtl> 
    </xsl:template> 


</xsl:transform> 
Verwandte Themen