当前端asp页面,通过js获取一个标签值,该值含有中文,并向服务器端提交时,服务器端无法接收到该参数,针对该问题,提出如下解决方案:
(1)在前端的js中对获取的中文参数,采用escape()函数进行编码;具体如下:
var param = “中文”;
window.location.href="handle.asp?param="+escape(param);
(2)在服务器端处理在hanle.asp对应的handle.asp.cs中设置
Response.ContentEncoding = System.Text.Encoding.getEncoding("GB2312"); //设置请求的编码
Request.ContentEncoding = System.Text.Encoding.getEncoding("GB2312");//设置页面的编码格式
附:让请求和返回的编码格式保持一致,此外的纺码不能是UTF-8,否则照样接收不到。