Ajax

ajax 是什么誉察?有什么作用域帐?

  • AJAX 在瀏覽器與 Web 服務(wù)器之間使用異步數(shù)據(jù)傳輸(HTTP 請(qǐng)求)從服務(wù)器獲取數(shù)據(jù).
    通過(guò)JavaScript發(fā)送請(qǐng)求痒谴、接受服務(wù)器傳來(lái)的數(shù)據(jù)稚铣,然后操作DOM將新數(shù)據(jù)對(duì)網(wǎng)頁(yè)的某部分進(jìn)行更新箱叁,使用Ajax最直觀的感受是向服務(wù)器獲取新數(shù)據(jù)不需要刷新頁(yè)面等待

前后端開發(fā)聯(lián)調(diào)需要注意哪些事情墅垮?后端接口完成前如何 mock 數(shù)據(jù)?

  • 前后端進(jìn)行開發(fā)前耕漱,注意接口的名字算色,請(qǐng)求的方式,數(shù)據(jù)的類型
  • 后端接口完成前螟够,前端可以通過(guò)MOCKJS等工具模擬數(shù)據(jù)灾梦。

點(diǎn)擊按鈕,使用 ajax 獲取數(shù)據(jù)妓笙,如何在數(shù)據(jù)到來(lái)之前防止重復(fù)點(diǎn)擊?

  • 可以設(shè)置狀態(tài)鎖
    var flag=false;//設(shè)置狀態(tài)鎖
    btn.addEventListerner('click',function(){
    if(!flag){
    flag=true;//打開狀態(tài)鎖
    //to do運(yùn)行代碼
    flag=false;//執(zhí)行完代碼若河,將狀態(tài)鎖關(guān)閉
    }
    })
  • 使用計(jì)時(shí)器
    var oBtn=document.querySelector(".button");
    var clockTime=null;
    oBtn.addEventListener("click",function(){
    if(clockTime){
    clearTimeout(clockTime)
    }
    clockTime=setTimeout(function(){
    //to do
    },5000)
    })

封裝一個(gè) ajax 函數(shù),能通過(guò)如下方式調(diào)用

function ajax(opts){
    // todo ...
}
document.querySelector('#btn').addEventListener('click', function(){
    ajax({
        url: 'getData.php',   //接口地址
        type: 'get',               // 類型寞宫, post 或者 get,
        data: {
            username: 'xiaoming',
            password: 'abcd1234'
        },
        success: function(ret){
            console.log(ret);       // {status: 0}
        },
        error: function(){
           console.log('出錯(cuò)了')
        }
    })
});

代碼如下

function ajax(opts){
  var xml = new XMLHttpRequest;
  xml.onreadystatechange = function(){
    if(xml.readyState == 4 && xml.status == 200){
      var jsonStr = JSON.parse(xml.responseText)
      opts.success(jsonStr);
    }
    if(xml.status == 404){
      opts.error()
    }
  }
  var dataStr = '';
  for(key in opts){
  dataStr += key + '=' + opts.data[key] + "&";    
  };
  dataStr= dataStr.substr(0,dataStr.length-1);
  if(opts.type.toLowerCase == 'post'){
    xml.open(post,opts.url,true);
    xml.setreRequestHeader('Content-type','application-x-www-form-urlencoded');
    xml.send(dataStr);
  }
  if(opts.type.toLowerCase == 'get'){
    xml.open(get,opts.url+'?'+dataStr,true);
    xml.send();
  }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末萧福,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子辈赋,更是在濱河造成了極大的恐慌鲫忍,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評(píng)論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件钥屈,死亡現(xiàn)場(chǎng)離奇詭異悟民,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)篷就,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門逾雄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人腻脏,你說(shuō)我怎么就攤上這事鸦泳。” “怎么了永品?”我有些...
    開封第一講書人閱讀 167,643評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵做鹰,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我鼎姐,道長(zhǎng)钾麸,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評(píng)論 1 296
  • 正文 為了忘掉前任炕桨,我火速辦了婚禮饭尝,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘献宫。我一直安慰自己钥平,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評(píng)論 6 397
  • 文/花漫 我一把揭開白布姊途。 她就那樣靜靜地躺著涉瘾,像睡著了一般知态。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上立叛,一...
    開封第一講書人閱讀 52,156評(píng)論 1 308
  • 那天负敏,我揣著相機(jī)與錄音,去河邊找鬼秘蛇。 笑死其做,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的赁还。 我是一名探鬼主播妖泄,決...
    沈念sama閱讀 40,743評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼秽浇!你這毒婦竟也來(lái)了浮庐?” 一聲冷哼從身側(cè)響起甚负,我...
    開封第一講書人閱讀 39,659評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤柬焕,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后梭域,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體斑举,經(jīng)...
    沈念sama閱讀 46,200評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評(píng)論 3 340
  • 正文 我和宋清朗相戀三年病涨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了富玷。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,424評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡既穆,死狀恐怖赎懦,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情幻工,我是刑警寧澤励两,帶...
    沈念sama閱讀 36,107評(píng)論 5 349
  • 正文 年R本政府宣布,位于F島的核電站囊颅,受9級(jí)特大地震影響当悔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜踢代,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評(píng)論 3 333
  • 文/蒙蒙 一盲憎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧胳挎,春花似錦饼疙、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)儿惫。三九已至,卻和暖如春伸但,著一層夾襖步出監(jiān)牢的瞬間肾请,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工更胖, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留铛铁,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,798評(píng)論 3 376
  • 正文 我出身青樓却妨,卻偏偏與公主長(zhǎng)得像饵逐,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子彪标,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • AJAX 原生js操作ajax 1.創(chuàng)建XMLHttpRequest對(duì)象 var xhr = new XMLHtt...
    碧玉含香閱讀 3,212評(píng)論 0 7
  • 1: ajax 是什么倍权?有什么作用? ajax全稱是Asynchrous JavaScript XML的縮寫捞烟。 作...
    LINPENGISTHEONE閱讀 186評(píng)論 0 0
  • 問(wèn)題 1. ajax 是什么薄声?有什么作用? Ajax是Asynchronous JavaScript and XM...
    愛(ài)上簾外修竹閱讀 408評(píng)論 0 0
  • 問(wèn)答 1. ajax 是什么题画?有什么作用默辨? Ajax是Asynchronous JavaScript and XM...
    Maggie_77閱讀 400評(píng)論 0 0
  • 小龍蝦,小龍蝦 你怎么長(zhǎng)得那么個(gè)樣子呀 我看見(jiàn)你從遙遠(yuǎn)的地方來(lái) 還有點(diǎn)害怕 更不敢碰也不敢抓 小龍蝦苍息,小龍蝦 愛(ài)吃...
    蘭草自芬芳閱讀 276評(píng)論 2 4