关于使用ajax时数据传输成功却不执行success 的几种原因总结
本人也是小白,写的不好请见谅,这是最近遇到问题的总结,有错的地方麻烦大佬告诉我一下!
@ResponseBody
在开发时忘记在controller上写这个注解,这个注解的作用是将Controller中返回的数据转换成指定格式如(如 json,xml等)。
dataType
在前台ajax的dataType中你指定后台数据返回类型,如后台返回的类型与你所返回的类型不匹配就会出现success不执行的问题
可以试着写成 dataType:'text’或者直接不写dataType。
另外可以加上error看看是否走它
$.ajax({
url:"...",
type:"POST",
secureuri:false,
data:param,
dataType:'text',//或者去掉
success:function (data) {
.....
},
error:function(data){
.....
}
});
关于button
这个问题发生的比较蠢可能也就我能遇到,<button>
标签写在<form>
里如果你的button没有type指定类型为button的话,它会默认为submit,这样在调用你所指定的onclick时,它会进行表单提交,不会执行success内容。