发送ajax乱码的解决办法:1、检查web.xml中是否配置了字符拦截器;2、修改jsp页面为utf-8;3、将ajax请求改为post请求即可。
本文操作环境:windows7系统、jquery3.2.1版、Dell G3电脑。
如何解决发送ajax乱码问题?
JQuery发送ajax请求时中文乱码问题解决:
先排除项目故障:
1.web.xml中是否配置了字符拦截器
<filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
2.jsp页面是不是utf-8
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
顺便也加上这个标签,统一发送utf-8,不过听说有些鸡肋
<meta http-equiv=”content-type” content=”text/html; charset=UTF-8″ />
3.在排除了故障后,将ajax请求改为post请求
$.ajax({ url:"list", type:'post', data:{ param:recode, city:locationActive }, dataType: 'json',//要求服务器返回的是json success:function(res){}
推荐学习:《ajax视频教程》