web 项目中参数传递乱码问题是个让人头痛又无奈的问题:
解决方法:
1.查看编码 页面编码后台代码编码格式,以及服务器(tomcat 等)编码是否一致。
2.如果用了get方式提交乱码可以尝试将提交方式改为post 表单提交。
3.如果必须用URL传参,出现了乱码可以将参数编码一下或者两次编码:
js中将参数编码:
var batch_name = row.batch_name
//js 编码(两次编码) 防止传递过程中乱码
batch_name = encodeURI(batch_name);
batch_name = encodeURI(batch_name);
后台获取参数后解码:
String batch_name = req.getParameter("batch_name");
//后台解码(解码两次),对应 前台页面的js 编码。
if(!"".equals(batch_name)&&batch_name !=null){
batch_name = URLDecoder.decode(batch_name,"UTF-8");
batch_name = URLDecoder.decode(batch_name,"UTF-8");
}