asp.net 后台 Request.Params时遇到前台发送的中文字符 , 得到乱码怎么解决?
前台:url=".....ashx?action=xxx&id=中文"ashx里我Request.Params["id"]时候得到乱码(调试得到值为�...
前台: url=".....ashx?action=xxx&id=中文"
ashx里我Request.Params["id"]时候得到乱码(调试得到值为 ��ý ),怎么解决。。。 展开
ashx里我Request.Params["id"]时候得到乱码(调试得到值为 ��ý ),怎么解决。。。 展开
4个回答
展开全部
编码问题,HTTP头也可以直接指定charset的,如果还不行,表单form标记中有一个accept-charset属性,在非ie浏览器种,如果将其赋值(比如accept-charset="UTF-8"),则表单会按照这个值表示的编码方式进行提交。在ie下,一般的兼容解决办法是:
form1.onsubmit=function(){
document.charset=this.getAttribute('accept-charset');
}
form1.onsubmit=function(){
document.charset=this.getAttribute('accept-charset');
}
追问
没成功 你看下楼下stydfans说的方法呢?我没理解意思
展开全部
编码问题,HTTP头也可以直接指定charset的,如果还不行,表单form标记中有一个accept-charset属性,在非ie浏览器种,如果将其赋值(比如accept-charset="UTF-8"),则表单会按照这个值表示的编码方式进行提交
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
传参数的时候,把中文使用UrlEncode编码一下,
即 Server.UrlEncode("中文")即可。在获取页面,使用 Server.UrlDecode(获取的参数值)就可以了。
即 Server.UrlEncode("中文")即可。在获取页面,使用 Server.UrlDecode(获取的参数值)就可以了。
更多追问追答
追问
js里不能Server.UrlEncode
追答
Server.UrlEncode 是建立在IIS级的服务器处理方法,JS里调用的话,可以在后台定义一个string类型的public 参数(假设定义为 public string test =Server.UrlEncode("中文") )。
前台JS中,使用即可得到参数。
成功了不要忘了满意答案哈~
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Server.UrlDecode(Request.Params["id"]);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询