在项目中经常回存在通过JS去请求操作的事件发生,而这些请求的url链接又通常会使用到中文,
而这些中文在JS中可以正常alert出来,但是提交给后台时就显示成乱码了。
这里提供一个解决方案,基本原理就是在JS中将中文转码成URI方式,如下:
var queryTitle = document.getElementByIdx_x_x('queryTitle').value;
queryTitle=encodeURI(queryTitle);
queryTitle=encodeURI(queryTitle); //据说需要转2次
然后在后台获取的时候,解码URI:
String newTitle = request.getParameter("newTitle");
newTitle = java.net.URLDecoder.decode(newTitle, "utf-8");
这样就可以了
js:
function getDoctorMobile(currentElement,nextElement){
var selected=currentElement.options[currentElement.selectedIndex].value;
selected=encodeURI(selected);
selected=encodeURI(selected);
if(selected != ''){
jQuery.getJSON("${root}/admin/ajax/sys/area.do?action=GetDoctorMobile&doctorName="+selected,
function(items){
var output = [];
jQuery.each(items, function(i,item){
output.push('<option value="'+ item.mobile +'">'+ item.mobile +'</option>');
});
$('#'+nextElement).html(output.join(''));
$('#'+nextElement).css('display','');
});
}
}
java:
public String doGetDoctorMobile(Map<String, Object> context, CGI cgi) throws UnsupportedEncodingException {
String name = cgi.getString("doctorName");
name = java.net.URLDecoder.decode(name, "utf-8");
Long hospitalId = (Long) cgi.getSession().getAttribute("hospitalId");
if(hospitalId != null && StringUtils.isNotBlank(name)){
UserInfo info = new UserInfo();
info.setMedicalAgencyId(hospitalId);
info.setDoctorName(name);
Query<UserInfo> query = new Query<UserInfo>();
query.setQueryObject(info);
List<UserInfo> users = userService.queryDoctor(query);
writeJsonResponse(users, cgi);
}
return null;
}
分享到:
相关推荐
分析:JQuery的AJAX提交,会将要提交的数据进行编码,使用encodeURIComponent在js中处理数据。因此,无论是 Firefox或者IE,提交的数据都是一致的,都是UTF-8编码后的数据。 查看Header,发现Entity中的Content-Type...
注意:该事件在Linux版本的Flash Player中存在问题,目前还无法解决。 - 传入参数 file object:文件对象 bytes complete:已经上传完毕的文件字节数 total bytes:文件总体积的字节数 [编辑本段]常见错误...
帮助解决网页和JS文件中的中文编码问题的小工具 慎用const关键字 装箱,拆箱以及反射 动态调用对象的属性和方法——性能和灵活性兼备的方法 消除由try/catch语句带来的warning 微软的应试题完整版(附答案) 一个...
- 选中文件时,移动到屏幕可视区域(解决上下左右选中文件滚动条不一致问题) ###ver2.51 `2014/6/22` ---- ####fix bug:(bug解决和程序优化) - 登陆多次密码输入错误验证码bug解决 - 修复漏洞:创建副本加入...
-修正了使用IFrameUrl的Tab在切换过程中会重复加载的问题,这是一个在v2.1.6引入的问题(feedback:eroach)。 -修正了启用AutoPostBack的Grid,其RowClick会覆盖LinkButtonField, HyperLinkField, CheckBoxField的...
-修正了使用IFrameUrl的Tab在切换过程中会重复加载的问题,这是一个在v2.1.6引入的问题(feedback:eroach)。 -修正了启用AutoPostBack的Grid,其RowClick会覆盖LinkButtonField, HyperLinkField, CheckBoxField的...
实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则...
2)修正上传功能中存在的一个安全问题!(重要更新)! 3)修正GIF图像添加文字水印无法自定义大小的BUG! 4)修正GIf图像生成缩略图质量较低的BUG! 2008/10/20 Version 5.0.7 For VS2005/2008 Updates: 1)修正...
超实用的jQuery代码段精选近350个jQuery代码段,涵盖页面开发中绝大多数要点、技巧与方法,堪称史上最实用的jQuery代码参考书,可以视为网页设计与网站建设人员的好帮手。《超实用的jQuery代码段》的代码跨平台、跨...
实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式...
实例112 解决用substr()函数对中文字符串截取时出现乱码的问题 143 实例113 字符串与HTML标记相互转换 144 实例114 运用PHP 5.0新型字符串输出XML数据 145 实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式...
2)修正上传功能中存在的一个安全问题!(重要更新)! 3)修正GIF图像添加文字水印无法自定义大小的BUG! 4)修正GIf图像生成缩略图质量较低的BUG! 2008/10/20 Version 5.0.7 For VS2005/2008 Updates: 1)修正每次新建...