1
js传递带中文的用encodeURIComponent编译
var f_nickname = encodeURIComponent($('#' + divId + '_nickname').val());
后台获取
String nickname = yText.UrlDecode(ToolUtil.getCh(request, "nickname"));
yText.java
public static String UrlEncode(String str) {
try {
return URLEncoder.encode(str, "UTF-8");
} catch (Exception e) {
//e.printStackTrace();
return null;
}
}
public static String UrlDecode(String str) {
try {
return URLDecoder.decode(str, "UTF-8");
} catch (Exception e) {
//e.printStackTrace();
return null;
}
}
public static String getCh(HttpServletRequest request, String name) {
ChineseSet set = new ChineseSet();
return set.getChinese(request.getParameter(name));
}
2
// 对给定字符进行 URL 编码
public String encode(String str){
if(str!=null)
{
try {
str = java.net.URLEncoder.encode(str,"GBK");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return str;
}
// 对给定字符进行 URL 解码
public String decode(String str){
if(str!=null)
{
try {
str = java.net.URLDecoder.decode(str,"GBK");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return str;
}
3
js 转码两次
var f_nickname = escape(escape(($('#' + divId + '_nickname').val()));
后台获取
public static String ajaxToString(HttpServletRequest request, String name) {
if(request.getParameter(name)==null)
return null;
String value = request.getParameter(name);
//Tool.iso2charset(rewrite_url, "GBK");
return Escape.unescape(Escape.unescape(value));
}
demo链接:http://pan.baidu.com/s/1cxx59O 密码:gnkt