[XSLT] inline Javascript in XHTML met PHP5/XSL

Pagina: 1
Acties:

  • Genoil
  • Registratie: Maart 2000
  • Laatst online: 12-11-2023
Hoi, ik weet dat inline Javascript in XHTML het beste op deze manier in een pagina gezet kan worden:

HTML:
1
2
3
4
5
<script type="text/javascript">
//<![CDATA[
alert("<This is compatible with XHTML>");
//]]>
</script>


Nu heb ik een XSLT sheet waarin door XSLT kleine stukjes javascript gegenereerd worden:

XSLT:
1
2
3
4
5
<xsl:if test="container/@type = 'slideshow'">               
    <script type="text/javascript">
         lImgs = [<xsl:apply-templates select="container/unit" mode="jsarray" />];
    </script>           
</xsl:if>


Libxslt van PHP5 zet hier zelf CDATA tags omheen, maar hoe zorg ik dat die slashes ervoor komen. Zelf hard de CDATA tags+ // erin zetten kan niet, omdat dan de XSLT die de javascript array genereert niet meer wordt uitgevoerd...weet iemand of hier een oplossing voor is?

[ Voor 14% gewijzigd door Genoil op 23-12-2004 16:12 ]


  • Michali
  • Registratie: Juli 2002
  • Laatst online: 22-03 18:12
je zou toch toch incompatible stukjes puur tussen cdata tags kunnen zetten?
code:
1
if ( test /*<![CDATA[*/ && /* ]]> */ nogeentest ) {

Niet erg netjes, vraag me verder ook af op het werkt :?

Of bedoelde je dat niet?

[ Voor 11% gewijzigd door Michali op 23-12-2004 16:16 ]

Noushka's Magnificent Dream | Unity


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Zo misschien:

code:
1
2
3
4
5
<script type="text/javascript">
<!--//--><![CDATA[//><!--
alert("<This is compatible with XHTML>");
//--><!]]>
</script>

  • Genoil
  • Registratie: Maart 2000
  • Laatst online: 12-11-2023
ik heb er dit van gemaakt:
code:
1
2
3
4
5
6
7
<xsl:if test="container/@type = 'slideshow'">               
    <script type="text/javascript">
        <xsl:comment>
            lImgs = [<xsl:apply-templates select="container/unit" mode="jsarray" />];
        </xsl:comment>
    </script>           
</xsl:if>


Nu zettie alle JS tussen <!-- --> en het werkt weer. Maakt het dan nog uit dat er geen CDATA in staat qua well-formedheid en validiteit?

[ Voor 80% gewijzigd door Genoil op 23-12-2004 17:04 ]