Ajax

longshengguoji 2012-09-25

今天看了视频,又试了试,解决了Ajax中,在利用get方法与后台交互过程中,url中出现中文乱码情况的解决方案。有两种。

第一种:前端浏览器如果是火狐或者Chrome的话,则不需做处理,如果是IE的话,比较怪,需要在url中出现中文的字段加上编码,例如从$("#username").val()得到中文,则需加上
encodeURI($("#username").val());
才可以

在后台代码中,进行一次转换,例如对username进行转换,则

String newUsername=new String(username.getBytes("iso8859-1"),"UTF-8");

第二种的情况下,前端做两次encodeURI,即

encodeURI(encodeURI($("#username").val()));
然后后台,做一次decode,即
String newUsername=URLDecoder.decode(username,"UTF-8");
这样相当于大家说好都用UFT-8的编码方案

相关推荐

mmywcoco / 0评论 2020-06-06