ajax返回值

success:function(data){

if(data.success){

$("#resultImg").html(data);

}else{

$("#resultImg").html("出现错误:"+data.msg);

}

},

error:function(jqXHR){

alert("验证码填写错误");

}

是在不懂这几句的意思,这浏览器怎么知道我后台是返回的true或false。比如说,现在做一个图片验证,写一个错误的验证码传到后台验证,请求什么的都是正确的啊。但是打印是error中的信息。但是请求是成功啊,不是是按照状态码实现成功或失败吗? 还有就是既然成功了,里面为啥还要在会有判断。每次我验证码的请求后都是返回的$("#resultImg").html("出现错误:"+data.msg);这个值


whoami_z
浏览 1846回答 2
2回答

qq_阿集_0

ajax里面的调用机制是这样的,当请求失败时(比如网络连接不上,url不存在),会自动调用error,当服务器接受了请求,返回了数据,则调用success,而且你的函数的第一个参数就是请求过来的数据。然后你问,为什么success里面还有判断,因为你发送过去的数据不一定是正确无误的,如果服务端验证的时候认为你的数据有问题,就返回错误信息给你。

走向流沙

success是请求成功后,后台返回给你信息的时候,你再执行里面的函数,error则是请求失败,则执行里面的函数。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JQuery