javascript 中文乱码,百度了一上午都不行,急得直冒汗

javascript url地址栏传值到文本框,中文乱码,请问怎么解决?

js传参包含中文内容用encodeURLComponent编码下内容

window.location='search?s='+encodeURLComponent('中国')

encodeURL(你的中文),这个需要转码

encodeURI(),上面写错了

转义一下试试encodeURIComponent();

URLDecoder.decode(user.getName(),"UTF-8");

用webstrom打开,选择gbk编码

参数用提交表单就不会乱码了

容器指定中文
例如:tomcat中的server.xml中

 <Connector port="8082" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>

用webstrom打开

URLDecoder.decode(user.getName(),"UTF-8")

encodeURI()方法
址栏URL中的传递的已转换参数“%”与“%”之间的已转义字符进行处理传递到后台中。这样会造成与实际经过encodeURI()编码后的URL不符,因为浏览器误认为“%”是转义字符字符了,它并未将“%”认为是个普通字符。
所有要二次编码,使用encodeURI
encodeURI(encodeURI("/order?name=" + name));
后台接收
URLDecoder.decode("chinese string","UTF-8")

软件项目解决中文乱码的根本是从页面(HTML/JSP/ASP/PHP等)提交数据到数据库都采用一致编码方式
(用的最多的就是UTF-8),就不会出现乱码!需要如下设置:
(1)IDE的工作环境编码方式UTF-8(不同的IDE设置方法不同);
(2)页面(HTML/JSP/ASP/PHP等)设置为UTF-8;
(3)JavaScript默认采用UTF-8(如果项目采用GBK编码的话,必定乱码)。
(4)服务器对请求链接的编码方式设置为UTF-8(不同的服务器设置方法不同,以Tomcat为例:tomcat中的server.xml中

connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>,引用scgh的回答)。
(5)数据库的编码方式设置为UTF-8(各种数据库的编码方式设置方式不同)。
(6)Javascript请求的地址中文乱码,可采用window.location='search?s='+encodeURLComponent('中国')(showbo的回答)
这种方式解决乱码。但仍需要作上述5个方面的设置,否则还是会产生乱码。
希望能帮助到你!

你可以 转义一下试试encodeURIComponent();