Avatar billede bigg Nybegynder
13. januar 2006 - 09:56 Der er 8 kommentarer

Problem med xml der indeholder html

Hej Drenge og Piger,

Jeg har sku et problem, sidder og er igang med et meget simplet CMS system. Hvor jeg har en WYSIWUG Editor ( FreeTextBox ), som generere noget html til mig og bagefter for at presentere det. Smider jeg der igennem xslt.

Men xslt'en stripper html tag'sne hvilket er rimeligt provo..

Please help!.. :-(
Avatar billede Slettet bruger
13. januar 2006 - 10:07 #1
Hvis dine tags bliver "strippet" er det måske fordi du bruger <value-of> til at sende dem ud med - alternativt kan det være de slet ikke bliver processeret, så lad os lige se et eksempel på output fra FreeTextBox'en + dine XSLT templates, og så skal vi se hvad der kan gøres ved det.

/CS

(WYSIWUG = What You See Is What You Usually Get, eller hvad? :-)
Avatar billede bigg Nybegynder
13. januar 2006 - 10:24 #2
Eksempel på WYSIWUG output:

<P>essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum. </P>
<P>ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting</P>

To paragraphs...

Min XSLT template for dette data element er:

<xsl:template match="medarbejder">
        <p>
            <xsl:value-of select="data" />
        </p>
</xsl:template>

Bruger xslt til at styre rettigheder og style på forskellig output på sitet..

/Bigg
Avatar billede bigg Nybegynder
13. januar 2006 - 10:25 #3
Output for dette ville være:

essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.

Da den kun skriver den ene paragraph og stripper <P> tag'et..
Avatar billede Slettet bruger
13. januar 2006 - 11:01 #4
Prøv først lige at kopiere indholdet af <data>, med copy-of:

<xsl:template match="medarbejder">
            <xsl:copy-of select="data" />
</xsl:template>

- får du det forventede ud?

/CS
Avatar billede bigg Nybegynder
13. januar 2006 - 11:15 #5
Du er min stjerne for idag... ;)

/Gorm
Avatar billede Slettet bruger
13. januar 2006 - 11:30 #6
Ok tak - men vær lige opmærksom på at ALT kopieres, dvs. hvis det er muligt at lave <script> tags med den der FreeTextBox, så har du lige åbnet et potentielt ormehul til helvede... :-)

/CS
Avatar billede bigg Nybegynder
13. januar 2006 - 11:34 #7
Ok.. vil du ha point?..

/G
Avatar billede Slettet bruger
13. januar 2006 - 11:49 #8
Så lad gå da... :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester