JavaScript-jquery1.9 jsonp如何实现跨域同步
var ajaxResult = false;
$.ajax({
async:false,//非跨域下有效
url:WEB_URL+$(obj).attr('ajax'),
type:'POST',
dataType:'jsonp',
data:{param:$(obj).val()},
jsonp:JSONP_CALLBACK,
success:function(data){
ajaxResult = (data.status != 'error' && data.status != 0) ? true : false;
alert('aaaaaaa'+ajaxResult);
},
error:function(){return 'fail';}
})
//alert(ajaxResult);
return ajaxResult;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
jquery里jsonp没法做同步的. 我觉得这里有两个选择:
1). 把你的处理逻辑写入ajax的success()回调函数中;
2). 外部设置标志位, ajax的sucess()设置标志位. 外部代码setTimeout轮询标志位.
不知道还有没有更好的方法.
@jquery ajax回调函数返回值如何赋值给其他变量
方法二示例, 仅供参考. 需要说明的是, js里无法真正实现sleep, 所以基本无法作出同步的效果来: