WEB 应用或多或少总会用到AJAX 请求,而有时AJAX 请求会出现一些问题:比如编码问题,明明输入的是中文咋到数据库就成“???”了呢?
为此我总结了一下处理此类事情的方法:
1. 使用encodeURI() 函数将字符串作为 URI 进行编码:
前端encodeURI(encodeURI(string)); 后台java.net.URLDecoder.decode(str,"utf-8")
2.如果以上还未解决那就有可能是各个浏览器请求处理不一样所致,可以使用contentType来解决
在AJAX请求 添加
$.ajax({ type:"POST",url : 路径,contentType: "application/x-www-form-urlencoded; charset=utf-8",success:function(data){ } });
3.如果以上还未解决这个问题,数据库还是编码问题;那就有可能是数据库问题了
第一检查你创建数据库的语句是否有设置编码:
create database 数据库名 default character set utf8 default collate utf8_general_ci;如果这个也没有解决,那就请看一下你的数据库如MysqL
找到my.nin文件查看配置是否是UTF8
default-character-set = utf8 character-set-server = utf8好啦如果以上还没解决或者帮到你,那么我也没办法了