ajax请求,老是执行error函数而不执行success,为什么?哪位大佬帮忙看一下,感激不尽!

function checkPhoneNum(phone){
$.ajax({
url:"http://localhost:8080/DeterminationInCloud/FindServlet",
type:"post",
dataType:"jsonp",
//jsonpCallback:"fonc",
async:true,
data:{phoneNum:phone},
error:function(){
mui.alert("对不起,请求出错!");
},
success:function(result){
console.log(result);
var result = this.responseText;
result = result.replace(/\s/g," ");
if(result == "1"){
mui.toast("该号码可以注册!");
}else{
mui.alert("该号码已经注册!");
}
}

                })
            }

```后端程序有运行,在浏览器的Network Response里也有返回字符串
图片说明

应该是 接口返回的不是 json 类型吧 不想改接口的话 把dataType:"text" 试试

老哥,我也是个菜鸟,但是感觉你这个ajax请求会一直执行{}中的第一个,不会去{},就是逗号后面的啊,你这个好像不管回调的function是什么都会提示“对不起,请求出错!”,一枚小菜鸟的理解,可能不怎么会,别在意。

后台方法添加@ResponseBody,试试

datatype是ajax发送请求到后台后 预期服务器返回的数据类型 很明显 你的response body里是一个字符串不是一个对象 所以匹配不上
类型为jsonp的话 后台需要拼一下callback 前台的那个注释也要打开 具体的给你搜了一个csdn的文章 可以参考一下 https://blog.csdn.net/Third_Week/article/details/79075682