Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [xml][xsl] <br> w XML nie działa w outpucie XSL
Forum PHP.pl > Forum > XML, AJAX > XML
user2
Próbuję przetworzyć taki kod:
  1. <Par>
  2. <TAG>jakiś tekst, jakiś tekst
  3. <br />
  4. inny tekst
  5. </TAG>
  6. </Par>

tak, aby w efekcie dostać
  1. jakiś tekst, jakiś tekst
  2.  
  3. inny tekst

Wszystko jest dobrze dla IE (disable-output-escaping="yes"), ale dla FF już tak dobrze nie jest.
Z tego co znalazłem na niniejszym forum, trzeba użyć CDATA, ale problem polega na tym, że nie mogę ingerować w pliki XML, które dostaję z zewnętrznej firmy.
Korzystam z takiego pliku xsl:
  1. <?xml version="1.0" encoding="iso-8859-2" ?>
  2.  
  3. <xsl:stylesheet version="1.0"
  4. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  5. xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  6.  
  7. <xsl:template match="/">
  8.  
  9. <xsl:value-of select="//Par/TAG" disable-output-escaping="yes" />
  10.  
  11. </xsl:template>
  12.  
  13. </xsl:stylesheet>

Nie wiem tylko gdzie dodać CDATA, aby to śmigało też poza IE.

Będę wdzięczny za wszelką pomoc smile.gif
seth-kk
zawartosc <TAG></TAG> powinna byc w CDATA - <br /> moze byc traktowany jako element xmla ktorym nie jest
nie mozesz przefiltrowac tych plikow do bardziej poprawnej postaci (i trzymac np jako cache)?
user2
Dzięki za odpowiedź.
Cytat(seth-kk @ 22.08.2009, 23:13:27 ) *
nie mozesz przefiltrowac tych plikow do bardziej poprawnej postaci (i trzymac np jako cache)?


Może i jest to jakiś sposób tylko jakbyś proponował to zrobić? Ja dostaję powyższego XML z webserwisów i przetwarzam je za pomocą SOAP. Jako, że pliki tego SOAP odpowiedzialne są za całą treść na stronie, która jest przesyłana przez wiele różnych serwisów, nie mogę tym zarządzać na poziomie plików z SOAP.

W tzw. międzyczasie zrobiłem coś takiego:

1. ładuję normalnie na stronie to co mi XSL podaruje (przeparsowane)
2. za pomocą JS "podmieniam" zawartość z pozamienianymi znakami < i >

Może masz lepsze rozwiązanie? Chętnie spróbuję winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.