Pröva att lägga till:
<xsl:output method="html" media-type="text/html">
Om inte det fungerar lägg till ett dolt fäl i formuläret:
<input type="hidden" name="contentType" value="text/html"/>
5 svar · 553 visningar · startad av Marcus E
Jag har ett formulär som ser ut så här:
<form method="post" action="..."">
<input name="a"/>
</form>
Om jag har detta i en HTML-fil och skriver åhå får jag tillbaka a=%E5h%E5. E5 står för å, så det är rätt.
Om jag däremot lägger formuläret i en XSL-fil som jag kopplar till en XML-fill på detta sätt:
XML-fil:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<empty/>
XSL-fil:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<form method="post" action="...">
<input name="a"/>
</form>
</xsl:template>
</xsl:stylesheet>
kodas datan som UTF-8. Jag får alltså tillbaka a=%C3%A5h%C3%A5 istället.
Jag har försökt att använda Accept-Charset på formuläret, men det hjälper inte.
Jag använder Internet Explorer 6. Hur ska jag få det att skicka tillbaka formuläret i det format jag önskar (ISO-8859-1)?
Pröva att lägga till:
<xsl:output method="html" media-type="text/html">
Om inte det fungerar lägg till ett dolt fäl i formuläret:
<input type="hidden" name="contentType" value="text/html"/>
Problemet försvann efter att jag startade om Windows och kom tillbaka nu. Troligen en bugg i Internet Explorer. :(
Var ska xsl:output vara? Eftersom forumläret fungerar f.ö., tvivlar jag på att xsl:output hjälper.
input-fältet förändrade ingenting.
Jag har fortfarande problem med detta. Jag har provat Accept-Charset på formuläret men det fungerar bara i Mozilla.
Standardkodningen vid utmatning från en XSL-transformation är UTF-8 I MSXML.
Vad händer om du provar
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" [b]encoding="ISO-8859-1"[/b] media-type="text/html" [b]/[/b]>
<xsl:template match="/">
...
...
...
Läs mer på http://www.w3.org/TR/xslt#output
Det fungerade faktiskt. Tack. :D