以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  编码问题搞得我头都大了,copy-of插入的xsl文件乱码?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=63743)


--  作者:qileroro
--  发布时间:6/14/2008 6:48:00 PM

--  编码问题搞得我头都大了,copy-of插入的xsl文件乱码?
使用xslt遇到N多问题啊,挫折~~~
向各位有经验的大哥请教

问题:使用copy-of插入另外一个xslt文件,但是被插入的xslt文件里面的链接中文参数都是一串乱码(IE),为什么会这样呢,是不是我漏了什么东西(试过设置xsl:output的doctype属性,没用)?改成method="xml"两个链接都正常了,但是改成xml我的网页不正常了,郁闷~~~


下面3个文件都是保存成UTF-8的。
a.xml
-------------
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="a.xslt"?>
<root></root>

a.xslt
------------
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" />

<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<xsl:copy-of select="document('h.xslt')" />
<a href="?中文">link</a>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

h.xslt
----------------
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
 <a href="?中文">link</a>
</xsl:template>
</xsl:stylesheet>


--  作者:Qr
--  发布时间:6/15/2008 9:10:00 AM

--  
IE下似乎用xsl:include或xsl:import来导入xsl也无结果,FF正常。应该是method的问题,通常IE会将中文链接编码,应该不会影响使用。
--  作者:qileroro
--  发布时间:6/15/2008 12:19:00 PM

--  
先谢谢热心的Qr版主
有些是编码过有些没编码过,郁闷,因为我也要在客户端js里面读出来,如果用unescape()解编码,那地址栏显示中文的参数就得到乱码~~~

我还有个问题,没编码过的链接,点下去地址栏显示的是中文,但是点刷新服务器接受的是乱码,这是什么问题?有什么办法解决?


--  作者:Qr
--  发布时间:6/18/2008 1:10:00 PM

--  
这些应该涉及浏览器的运行机制问题,一般都要进行编、解码的,除非你浏览的是本地文件。即使是向服务器提交数据,也是经过编、解码的,只是它无须人工干涉而已。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
7,035.156ms