在js文件中,使用连接jsp的url传参,如果参数是中文会出现乱码问题,如下可以解决:

 

方法一:(已确认 可行)

String username = new String(request.getParameter("username ").getBytes("iso8859-1"),"gb2312或utf-8");

  

方法二:(有待确认)

 js部分:

window.location.href = "a.jsp?name=武大郎"

 

JSP部分:

<%
String name = request.getParameate("name");
%>

 

如上所述,name会是一串乱码。

 

正确的写法:

 

js部分:

var name = encodeURI(encodeURI('武大郎'));//注意:是两次转码
window.location.href = "a.jsp?name="+name;

 

JSP部分:

<%@import="java.net.*"%>
<%
String name = request.getParameate("name");
name = URLDecoder.decode(name,"UTF-8");
%>

 

如上:name取值正确。