页面编码问题mailto中夹杂中文以及UrlEncode的问题

    网页中有个发email的链接,需要调用客户的outlook发送email,链接是这样的:
mailto:zhangweiwei@staff.hexun.com?subject=主题<%=server.urlencode("客户反馈系统权限申请")%>&body=正文 这样就能达到自动把主题和部分正文填到outlook里,但是运行时发现outlook接收的是乱码。我的网页是utf-8编码的,在web.config里面是这样的:
   <globalization
            requestEncoding="utf-8"
            responseEncoding="utf-8"
   />
    似乎是outlook接收的标准是gb2312,转换成这样也不行:
mailto:zhangweiwei@staff.hexun.com?subject=<%=Server.UrlEncode("主题")%><%=server.urlencode("客户反馈系统权限申请")%>&body=<%=Server.UrlEncode("正文")%>
<%=server.urlencode("请写明申请人,所属频道,和讯mis登录号,email,是否是公司领导")%>然后用vs的高级保存选项把这个网页保存为utf-8的编码,问题依旧,看来这个高级保存选项并不能影响它最终的真正编码,把web.config改为:
   <globalization
            requestEncoding="gb2312"
            responseEncoding="gb2312"
   />
问题就能解决。后来查msdn发现page指令也可以单独指定某页的编码方式:
在页首的<%@ page %>里面增加:ResponseEncoding="gb2312"即可,msdn说page指令也支持RequestEncoding,但用的时候发现page似乎不支持这个指令,莫非msdn搞错了?

PS:
后来单独改了本页的编码以后就可以了,但是发现如果不对其进行Encode那么在IE6里面是正常的,但是Firefox不正常,如果用Encode编码,则两个浏览器都正常。
<%=server.urlencode("请写明申请人,所属频道,和讯mis登录号,email,是否是公司领导")%>

原文地址:https://www.cnblogs.com/vagerent/p/763861.html