ajax方法异步与同步的转换
Posted SchopenhauerZhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax方法异步与同步的转换相关的知识,希望对你有一定的参考价值。
ajax技术,相信开发web的都耳熟能详了!但是ajax能实现同步吗?
能!
ajax:Asynchronous javascript And XML
异步不刷新技术 (http://www.runoob.com/jquery/ajax-ajax.html)
ajax写法:
$.ajax(
type:"POST/GET",
url:"",
data:,
dataType:"json",
async:true/false,//异步还是同步
success:function(response)
);
在post/get提交方式的简写:
$.post/get("url",data,function(response));//默认是异步的!
但是仅限于以上就显得很low了。
首先用success是n年前的事了:
推荐用.done();
$.ajax(type:”post/get”,data:,).done(function(response));
注意括号!
这是最常见的使用ajax方法了。下面实现ajax的同步请求:
$.ajax(
type:”“,
data:,
async:false,
).done(
function(response)
);
ajax同步请求最常见的就实现ajax请求的结果数据返回。
比如在用ajax方法成功得到相应后,我们需要把ajax的返回结果return出去给外部的函数使用这时需要同步。
function ajax()
var backData;
$.ajax(
type:”post”,
data:,
async:false,//更改为同步
).done(
function(response)
backData=response;
);
return backData;
var newData=ajax();
此时newData=response;
在此过程中注意修改async,它如果是true(默认),那么就是在异步的情况下,这种情况下实现return是不能实现的,因为异步就说明了程序的执行顺序和效果发生了改变。修改为同步,实现返回值。
以上是关于ajax方法异步与同步的转换的主要内容,如果未能解决你的问题,请参考以下文章