ajax封裝

可復(fù)制的代碼

<!DOCTYPE html>

<html lang="en">

<head>

? <meta charset="UTF-8">

? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? <meta http-equiv="X-UA-Compatible" content="ie=edge">

? <title>Document</title>

</head>

<body>

? <script>

? ? function ajax_method(url, data, method, success) {

? ? ? // 異步對(duì)象

? ? ? var ajax = new XMLHttpRequest();

? ? ? // get 跟post? 需要分別寫不同的代碼

? ? ? if (method == 'get') {

? ? ? ? // get請求

? ? ? ? if (data) {

? ? ? ? ? // 如果有值

? ? ? ? ? url += '?';

? ? ? ? ? url += data;

? ? ? ? } else {

? ? ? ? }

? ? ? ? // 設(shè)置 方法 以及 url

? ? ? ? ajax.open(method, url);

? ? ? ? // send即可

? ? ? ? ajax.send();

? ? ? } else {

? ? ? ? // post請求

? ? ? ? // post請求 url 是不需要改變

? ? ? ? ajax.open(method, url);

? ? ? ? // 需要設(shè)置請求報(bào)文

? ? ? ? ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

? ? ? ? // 判斷data send發(fā)送數(shù)據(jù)

? ? ? ? if (data) {

? ? ? ? ? // 如果有值 從send發(fā)送

? ? ? ? ? ajax.send(data);

? ? ? ? } else {

? ? ? ? ? // 木有值 直接發(fā)送即可

? ? ? ? ? ajax.send();

? ? ? ? }

? ? ? }

? ? ? // 注冊事件

? ? ? ajax.onreadystatechange = function () {

? ? ? ? // 在事件中 獲取數(shù)據(jù) 并修改界面顯示

? ? ? ? if (ajax.readyState == 4 && ajax.status == 200) {

? ? ? ? ? // console.log(ajax.responseText);

? ? ? ? ? // 將 數(shù)據(jù) 讓 外面可以使用

? ? ? ? ? // return ajax.responseText;

? ? ? ? ? // 當(dāng) onreadystatechange 調(diào)用時(shí) 說明 數(shù)據(jù)回來了

? ? ? ? ? // ajax.responseText;

? ? ? ? ? // 如果說 外面可以傳入一個(gè) function 作為參數(shù) success

? ? ? ? ? success(ajax.responseText);

? ? ? ? }

? ? ? }

? ? }

? </script>

</body>

</html>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 原生js的ajax請求 傳統(tǒng)方法的缺點(diǎn): 傳統(tǒng)的web交互是用戶觸發(fā)一個(gè)http請求服務(wù)器,然后服務(wù)器收到之后,在...
    暮雨默默閱讀 1,006評(píng)論 0 2
  • Js-ajax //請求的5個(gè)階段,對(duì)應(yīng)readyState的值 //0: 未初始化,send方法未調(diào)用...
    南潯_029f閱讀 298評(píng)論 0 0
  • AJAX 原生js操作ajax 1.創(chuàng)建XMLHttpRequest對(duì)象 var xhr = new XMLHtt...
    碧玉含香閱讀 3,574評(píng)論 0 7
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些閱讀 2,144評(píng)論 0 2
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)。 注意:講述HT...
    kismetajun閱讀 28,829評(píng)論 1 45

友情鏈接更多精彩內(nèi)容