亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

js實現(xiàn)對ajax請求面向?qū)ο蟮姆庋b

 更新時間:2016年01月08日 15:36:40   作者:andywuchuanlong  
這篇文章主要介紹了js實現(xiàn)對ajax請求面向?qū)ο蟮姆庋b的相關資料,需要的朋友可以參考下

AJAX 是一種用于創(chuàng)建快速動態(tài)網(wǎng)頁的技術。通過在后臺與服務器進行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁實現(xiàn)異步更新。這意味著可以在不重新加載整個網(wǎng)頁的情況下,對網(wǎng)頁的某部分進行更新。
在js中使用ajax請求一般包含三個步驟:

  •               1、創(chuàng)建XMLHttp對象
  •               2、發(fā)送請求:包括打開鏈接、發(fā)送請求
  •               3、處理響應

在不使用任何的js框架的情況下,要想使用ajax,可能需要向下面一樣進行代碼的編寫

<span style="font-size:14px;">var xmlHttp = xmlHttpCreate();//創(chuàng)建對象 
xmlHttp.onreadystatechange = function(){//響應處理 
  if(xmlHttp.readyState == 4){ 
    console.info("response finish"); 
    if(xmlHttp.status == 200){ 
       console.info("reponse success"); 
      console.info(xmlHttp.responseText); 
    } 
  } 
} 
xmlHttp.open("get","TestServlet",true);//打開鏈接 
 
xmlHttp.send(null);//發(fā)送請求 
 
function xmlHttpCreate() { 
  var xmlHttp; 
  try { 
    xmlHttp = new XMLHttpRequest;// ff opera 
  } catch (e) { 
    try { 
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");// ie 
    } catch (e) { 
      try { 
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
      } catch (e) { 
 
      } 
    } 
  } 
  return xmlHttp; 
} 
 
console.info(xmlHttpCreate());</span> 

如果在比較復雜的業(yè)務邏輯里面使用這種ajax請求,會使得代碼很臃腫,不方便重用,并且可以看到,可能在服務器響應成功后要處理一個業(yè)務邏輯操作,這個時候不得不把操作寫在onreadystatechage方法里面。
為了方便代碼的重用我們可以做出如下處理;  

  •       1、服務器響應成功后,要處理的業(yè)務邏輯交給開發(fā)人員自己處理 
  •       2、對請求進行面向?qū)ο蟮姆庋b  

處理之后看起來應該像下面這個樣子: 

<pre code_snippet_id="342814" snippet_file_name="blog_20140513_2_2489549" name="code" class="javascript">window.onload = function() { 
  document.getElementById("hit").onclick = function() { 
    console.info("開始請求"); 
    ajax.post({ 
        data : 'a=n', 
        url : 'TestServlet', 
        success : function(reponseText) { 
          console.info("success : "+reponseText); 
        }, 
        error : function(reponseText) { 
          console.info("error : "+reponseText); 
        } 
    }); 
  } 
} 
 
var ajax = { 
  xmlHttp : '', 
  url:'', 
  data:'', 
  xmlHttpCreate : function() { 
    var xmlHttp; 
    try { 
      xmlHttp = new XMLHttpRequest;// ff opera 
    } catch (e) { 
      try { 
        xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");// ie 
      } catch (e) { 
        try { 
          xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
        } catch (e) { 
 
        } 
      } 
    } 
    return xmlHttp; 
  }, 
  post:function(jsonObj){ 
    ajax.data = jsonObj.data; 
    ajax.url = jsonObj.url; 
    //創(chuàng)建XMLHttp對象,打開鏈接、請求、響應 
    ajax.xmlHttp = ajax.xmlHttpCreate(); 
    ajax.xmlHttp.open("post",ajax.url,true); 
    ajax.xmlHttp.onreadystatechange = function(){ 
      if(ajax.xmlHttp.readyState == 4){ 
        if(ajax.xmlHttp.status == 200){ 
          jsonObj.success(ajax.xmlHttp.responseText); 
        }else{ 
          jsonObj.error(ajax.xmlHttp.responseText); 
        } 
      } 
    } 
    ajax.xmlHttp.send(ajax.data); 
  } 
};

上述代碼實現(xiàn)了類似jquery中的ajax操作,希望對大家的學習有所幫助。

相關文章

  • js使用formData實現(xiàn)批量上傳

    js使用formData實現(xiàn)批量上傳

    這篇文章主要為大家詳細介紹了js使用formData實現(xiàn)批量上傳,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • JavaScript的懶加載處理的方式

    JavaScript的懶加載處理的方式

    懶加載是一種優(yōu)化技術,它可以延遲加載某些資源,直到它們真正需要被使用的時候才進行加載,實現(xiàn)懶加載的方法一般分為兩種:基于 Intersection Observer API 的懶加載和基于滾動事件的懶加載,本文給大家介紹JavaScript的懶加載處理方式,感興趣的朋友一起看看吧
    2023-10-10
  • js中textContent、innerText和innerHTML的用法以及區(qū)別

    js中textContent、innerText和innerHTML的用法以及區(qū)別

    這篇文章主要介紹了JavaScript中textContent、innerText和innerHTML的用法以及區(qū)別,需要的朋友可以參考下
    2023-05-05
  • js友好的時間返回函數(shù)

    js友好的時間返回函數(shù)

    這篇文章主要為大家詳細介紹了js友好的時間返回函數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • js實現(xiàn)圖片無縫循環(huán)輪播

    js實現(xiàn)圖片無縫循環(huán)輪播

    這篇文章主要為大家詳細介紹了js實現(xiàn)圖片無縫循環(huán)輪播,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • js滾輪事件兼容性問題需要注意哪些

    js滾輪事件兼容性問題需要注意哪些

    這篇文章主要為大家詳細介紹了js滾輪事件需要注意的兼容性問題,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • js生成隨機數(shù)的過程解析

    js生成隨機數(shù)的過程解析

    這篇文章主要介紹了js生成隨機數(shù)的過程,如何生成[n,m]的隨機整數(shù),感興趣的小伙伴們可以參考一下
    2015-11-11
  • JavaScript 處理Iframe自適應高度(同或不同域名下)

    JavaScript 處理Iframe自適應高度(同或不同域名下)

    Iframe自適應高度一直都備受關注,接下來為大家介紹下同域名下Iframe自適應高度的處理以及跨域時Iframe高度自適應,感興趣的朋友可以參考下哈
    2013-03-03
  • 如何用JS WebSocket實現(xiàn)簡單聊天

    如何用JS WebSocket實現(xiàn)簡單聊天

    這篇文章主要介紹了如何用JS WebSocket實現(xiàn)簡單聊天,對websocket感興趣的同學,可以參考下
    2021-05-05
  • bootstrap表單示例代碼分享

    bootstrap表單示例代碼分享

    這篇文章主要為大家詳細介紹了bootstrap表單示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05

最新評論