ajax

2018-06-23  本文已影响0人  要非常直接的看待自己

 先简单介绍一下,无论我们使用哪种语言开发,我们都可能会使用到jquery中ajax方法,主要应用于网页的动态刷新(局部刷新)。这里先简单阐述:每当我们浏览网页的时候,该网页由很多部分组成,而起初我们的网页是在我们访问url时一次性加载,然而在该页面中很多地方的数据都是动态、实时变化的,ajax在其中扮演着“隐藏者”的身份,不知不觉在后台执行请求,将数据呈现,形成局部刷新,从而不需要重新加载或刷新整个页面,对用户而言是一种很好的体验。

回归正题,介绍一下ajax的常用方法:

$.ajax({

         type:'post || get',

         url:'',请求url

         data:'',//请求参数

         dataType:'json',//这里我经常用到的是json数据类型

         async:false || true,//默认是true异步,false同步

         success:function(data){

         },

        .......

});

在谈到ajax时,同步和异步是必不可少的。

async:false  同步:当js代码加载运行到ajax同步代码块,会把当前界面中所有代码停止运行,页面会出现假死状态,只有当这个ajax执行完毕之后才会继续运行其它的代码,页面的假死状态解除。

async:true   异步:异步相对于同步,执行到该ajax代码的时候,不会影响其它代码运行。

ps:$.post(),$.get()已经封装过,没有ajax灵活。推荐使用$.ajax();这里用代码解释一下:

           ajax---> ······ success:function(data){ first方法()};two方法()

同步是在first方法执行完后,再执行two方法;而异步无需等到first方法执行完,two方法会独立执行,这里相当于两个线程,这样就更好理解了,分别执行不同的功能,无需等待。

这里结合一下之前开发遇到的问题:

在日常使用ajax的时候,通常都是异步请求,如何把通过ajax方法获得的数据传到ajax函数外?1、通过定义全局变量    2、改成async:false

最后简单说一下:同步可以相对减少代码运行的顺序问题,但如果使用过多,页面假死次数太多会极大程度的影响用户体验,所以很多人会说“ajax用同步就没有意义了”,这个地方我希望大家根据自己的需求,用合适的方式处理ajax的同步与异步的运用!!!

这是简书的第一篇文章,送给我亲爱的老婆yy,希望我们共同进步,努力向前!!!

上一篇下一篇

猜你喜欢

热点阅读