淺談ASP.NET中使用AJAX的簡單方法(2)_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:解讀ASP.NET編寫應(yīng)用程序的十大技巧
      1、在使用Visual Studio .NET時,除直接或非引用的對象外,不要使用缺省的名字。 .NET帶來的好處之一是所有的源代碼和配置文件都是純文本文件,能夠使用Notepad或WordPad等任意的文本編輯器進行編輯。如果不愿意,我們并非一定要使用Visual Studio .NET作為

      所以GetMSXmlHttp方法可以簡化為以下形式:

      以下為引用的內(nèi)容:
      function GetMSXmlHttp() {
      var xmlHttp = null;
      var clsids = ["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0"];
      for(var i=0; i
      xmlHttp = createXmlHttp(clsids[i]);
      }
      return xmlHttp;
      }

      我們可以看出,GetXmlHttpObject方法有一個handle參數(shù),這個參數(shù)指向一個回調(diào)方法,這個回調(diào)方法將被定義在每一個需要刷新的aspx頁中。現(xiàn)在我們已經(jīng)有了一個XmlHttp對象,接下來我們可以發(fā)送一個異步的HTTP請求了。

      以下為引用的內(nèi)容:
      function SendXmlHttpRequest(xmlhttp, url) {
      xmlhttp.open(’GET’, url, true);
      xmlhttp.send(null);
      }

       


      在以上代碼中我使用了一個GET HTTP請求發(fā)送了一個URL,你可以很容易修改以上的JavaScript代碼,使其發(fā)送其它的HTTP方法。

      寫在aspx頁中的方法

      現(xiàn)在我們已經(jīng)編寫完調(diào)用遠程頁面的所有方法。為了執(zhí)行這些方法,我們需要為GetXmlHttpObject方法傳遞一個回調(diào)方法名,然后向SendXmlHttpRequest方法傳遞一個URL字符串。下面是相應(yīng)的實現(xiàn)代碼:

      以下為引用的內(nèi)容:
      var xmlHttp;
      function executeCall(url)
      {
      try
      {
      xmlHttp = GetXmlHttpObject(CallbackMethod);
      SendXmlHttpRequest(xmlHttp, url);
      }
      catch(e){}
      }
      //CallbackMethod will fire when the state
      //has changed, i.e. data is received back
      function CallbackMethod()
      {
      try
      {
      //readyState of 4 or ’complete’ represents
      //that data has been returned
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == ’complete’)
      {
      var response = xmlHttp.responseText;
      if (response.length > 0)
      {
      //update page
      document.getElementById("elementId").innerHTML = response;
      }
      }
      }
      catch(e){}
      }

      CallbackMethod方法負責更新頁面。在我們的例子中,它只更新了指定的HTTP對象的inner HTML。但在實際應(yīng)用中,可以更新更多的內(nèi)容。

      最后要解決的問題是我們?nèi)绾卧赼spx頁中調(diào)用executeCall方法。如何調(diào)用executeCall方法取決于這個頁面要做什么。在一些情況下,executeCall方法可以在JavaScript事件出發(fā)時調(diào)用。

      分享:淺談ASP.NET開發(fā)下的MVC設(shè)計模式的實現(xiàn)
      ASP.NET是微軟最新推出的新型體系結(jié)構(gòu).NET框架的一部分,它為構(gòu)造新一代動態(tài)網(wǎng)站和基于網(wǎng)絡(luò)的分布式應(yīng)用提供了強有力的支持。與以前的Web 開發(fā)模型相比,ASP.NET 提供了許多重要的優(yōu)點例如: 簡易性;安全性;可管理性等。而且與基于過程的ASP頁面技術(shù)相比,

      來源:模板無憂//所屬分類:.Net教程/更新時間:2009-07-01
      相關(guān).Net教程