Ajax请求中的async:false/true
async. 默认是 true,即为异步方式,$.ajax执行后,会继续执行ajax后面的脚本,直到服务器端返回数据后,触发$.ajax里的success方法,这时候执行的是两个线程。
async 设置为 false,则所有的请求均为同步请求,在没有返回值之前,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

上网查阅了一些资料,发现Jquery的API中提到,JSONP格式不支持跨域同步。因为ajax的核心是通过XmlHttpRequest获取非本页内容,而jsonp的核心则是动态添加<script>标签来调用服务器提供的js脚本。jsonp的实现不是ajax,而是script节点,所以对ajax有效的配置未必对jsonp有效。

如果真的需要同步
解决方法:将jsonp请求之后的操作放在success回调函数中处理。

相关文章:

  • 2021-05-24
  • 2021-12-26
  • 2021-12-05
  • 2022-12-23
  • 2022-12-23
  • 2021-09-11
  • 2022-01-05
猜你喜欢
  • 2021-12-18
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-27
  • 2021-12-10
相关资源
相似解决方案