asp.net 后台 Request.Params时遇到前台发送的中文字符 , 得到乱码怎么解决?

前台:url=".....ashx?action=xxx&id=中文"ashx里我Request.Params["id"]时候得到乱码(调试得到值为�... 前台: url=".....ashx?action=xxx&id=中文"
ashx里我Request.Params["id"]时候得到乱码(调试得到值为 ��ý ),怎么解决。。。
展开
 我来答
如是我之闻
2012-12-12 · TA获得超过1237个赞
知道小有建树答主
回答量:1207
采纳率:57%
帮助的人:822万
展开全部
编码问题,HTTP头也可以直接指定charset的,如果还不行,表单form标记中有一个accept-charset属性,在非ie浏览器种,如果将其赋值(比如accept-charset="UTF-8"),则表单会按照这个值表示的编码方式进行提交。在ie下,一般的兼容解决办法是:
form1.onsubmit=function(){
document.charset=this.getAttribute('accept-charset');
}
追问
没成功  你看下楼下stydfans说的方法呢?我没理解意思
全亮危邦
2019-04-07 · TA获得超过1037个赞
知道小有建树答主
回答量:1730
采纳率:100%
帮助的人:8.3万
展开全部
编码问题,HTTP头也可以直接指定charset的,如果还不行,表单form标记中有一个accept-charset属性,在非ie浏览器种,如果将其赋值(比如accept-charset="UTF-8"),则表单会按照这个值表示的编码方式进行提交
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
stydfans
2012-12-13 · TA获得超过668个赞
知道小有建树答主
回答量:1263
采纳率:100%
帮助的人:512万
展开全部
传参数的时候,把中文使用UrlEncode编码一下,

即 Server.UrlEncode("中文")即可。在获取页面,使用 Server.UrlDecode(获取的参数值)就可以了。
更多追问追答
追问
js里不能Server.UrlEncode
追答
Server.UrlEncode 是建立在IIS级的服务器处理方法,JS里调用的话,可以在后台定义一个string类型的public 参数(假设定义为 public string test =Server.UrlEncode("中文") )。

前台JS中,使用即可得到参数。

成功了不要忘了满意答案哈~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
火影最爱
2012-12-12 · TA获得超过273个赞
知道小有建树答主
回答量:306
采纳率:0%
帮助的人:191万
展开全部
Server.UrlDecode(Request.Params["id"]);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式