$.ajax({
url: requestUrl,
type: "POST",
data: param,
dataType: "JSONP",
jsonp: "callbackparam",
jsonpCallback: "success_jsonpCallback",
success: FollowExpert.prototype.SuccessCallBack,//已失效
error: function () {
alert("关注失败");
}
});
function success_jsonpCallback(result) {
console.log();
alert("关注成功");
FollowExpert.prototype.SuccessCallBack(result);
}
请求成功了,也有返回,为什么回调函数没有执行
就是不执行,是为什么呐
你的成功是指success_jsonpCallback能正常执行FollowExpert.prototype.SuccessCallBack(result);还是什么。。
看你代码FollowExpert.prototype.SuccessCallBack应该会执行2次,一次是服务器端输出的success_jsonpCallback执行的,还有一个是success回调的
自己FollowExpert.prototype.SuccessCallBack断点或者console.log下时间戳,应该会出现2次
debug跟一下看看啊
看你的响应 可能是没有把回调的参数拼出来吧
解决方案 :是我先入为主了,我以为,使用了JSOP 参数后,就不再执行Success了,但还是执行了Success的,我断点了试了一下,是执行的。
感谢各位的回复,帮忙。!!!
后台方法:String jsonp=request.getParameter("success_jsonpCallback");,返回json格式:jsonp+"({key:value,key:value})"
function success_jsonpCallback(result) {
console.log();
alert("关注成功");
FollowExpert.prototype.SuccessCallBack(result);
我也遇到了这个情况,把定义好的成功回调函数放在script下(全局a作用域下)就生效了