.net Javascript 中文传值时出现乱码

2024-10-31 12:37:18

1、点弹出框的时候,中文传值,应该显示“公司代码,公司名称”,但是显示出来的是“口口口口”,复制到文本框中显示“��˾����”

.net Javascript 中文传值时出现乱码

2、在visual studio2010中F5执行程序,在取值的地方下断点,显示取到的selectname的值是正确的(此处用$.ajax()传值)

.net Javascript 中文传值时出现乱码.net Javascript 中文传值时出现乱码

3、F10继续执行代码,到跳转界面,查看所传值的参数selectname显示为“口口口”的乱码

.net Javascript 中文传值时出现乱码

4、一步步检查,查看接收传值数据的HttpContext类中的对象context,对应的Request.querystring()显示取到的值为一串带“%”的乱码

.net Javascript 中文传值时出现乱码

5、修改程序,在Javascript中传值的时,所取的字符串前增加“encodeURI(...)”,将中文转码之后再开始传值,将值带到跳转的界面中,系统会自动转码成中文url: "PopSelectWindowHandler.ashx?SELECT=" + select + "&SELECTNAME=" + encodeURI(selectname) + "&FROM=" + from + "&RET=" + ret + "&PAGE=" + curPage,

.net Javascript 中文传值时出现乱码

6、重新执行程序,下断点,执行到context的时候查看值,变成了正常的“%e5%85%ac%e5%8f%b8%e4%bb%a3%e7%a0%81%ef%bc%8c%e5%85%ac%e5%8f%b8%e5%90%8d%e7%a7%b0”,在网上对应的在线翻译网站中可以查到,这段字符串正式“公司代码,公司名称”的转码,到此说明已经修改成功

.net Javascript 中文传值时出现乱码

7、继续执行,发现解决了,显示出正常的中文,“公司代码,公司名称”

.net Javascript 中文传值时出现乱码.net Javascript 中文传值时出现乱码
猜你喜欢