国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

在ASP.NET中使用AJAX的簡單方法_.Net教程

2024-07-10 12:49:45
字體:
供稿:網(wǎng)友

推薦:解析在ASP.NET中調(diào)用存儲過程的方法
  在使用.NET的過程中,數(shù)據(jù)庫訪問是一個很重要的部分,特別是在B/S系統(tǒng)的構(gòu)建過程中,數(shù)據(jù)庫操作幾乎成為了一個必不可少的操作。調(diào)用存儲過程實現(xiàn)數(shù)據(jù)庫操作使很多程序員使用的方法,而且大

  介紹

  本文介紹了使用AJAX和ASP.NET編寫web應(yīng)用程序的一個簡單方法。同時,討論了使用AJAX的好處和不足。為了舉例說明,本文給出了相應(yīng)的JavaScript代碼和用C#.NET編寫的ASP.NET代碼。

  為什么使用AJAX

  也許大多數(shù)人已經(jīng)知道AJAX的意思是異步JavaScript和XML(Asynchronous JavaScript and XML)。據(jù)我所知,這項技術(shù)最初是由Microsoft在1999年提出來的,也就是我們所熟知的"使用遠(yuǎn)程調(diào)用(remote calls)的DHTML / JavaScript web應(yīng)用程序"。這項技術(shù)的核心就是通過瀏覽器發(fā)出一個異步的HTTP請求來調(diào)用服務(wù)端的網(wǎng)頁或服務(wù),在返回結(jié)果后,無需刷新就可以更新整個網(wǎng)頁。這項技術(shù)經(jīng)過不斷地完善,到目前為此,使用AJAX的web程序從表現(xiàn)上看已經(jīng)非常類似于Windows程序了。

  由于這項技術(shù)的實現(xiàn)需要依賴于前端的瀏覽器,因此,它的使用受到了限制。但在最近的幾年,由于瀏覽器功能的加強和一些公司,如Google、Amazon.com的許多基于AJAX的應(yīng)用的不俗表現(xiàn),終于使這項技術(shù)鳳凰涅磐、欲火重生。

  現(xiàn)在AJAX的使用已經(jīng)非常廣泛,任何帶有豐富用戶體驗的動態(tài)網(wǎng)頁都會不約而同地使用AJAX。

  解決方案

  本文所描述的使用AJAX的方法非常簡單,而且效率很高。同時這種方法還非常容易維護(hù),并且開發(fā)人員無需任何的特殊技巧就可以實現(xiàn)它,而且使用這種方法還可以跨瀏覽器。

  一個基本的AJAX實現(xiàn)需要兩個主要部分:一個使用JavaScript代碼編寫的客戶端HTML頁,這些JavaScript用來向服務(wù)端發(fā)送請求和接收響應(yīng);一個可以接收請求和向客戶端發(fā)送響應(yīng)信息的遠(yuǎn)程頁面。客戶端的JavaScript代碼的任務(wù)是建立一個XmlHttp對象,然后向服務(wù)端發(fā)送請求信息,最后通過回調(diào)方式處理服務(wù)端返回的響應(yīng)信息。這一切都是由JavaScript代碼實現(xiàn)的。

  本文的例子使用ASP.NET程序?qū)崿F(xiàn),在實現(xiàn)上要做到以下幾點:

  1、AJAX可以在不同的ASP.NET頁上向不同的服務(wù)端頁發(fā)送請求。

  2、遠(yuǎn)程頁面URL可以包含動態(tài)可計算的參數(shù),這樣做可以在ASP.NET的后端代碼中更方便地建立URL字符串。

  3、遠(yuǎn)程頁在更新HTML頁之前可以使用復(fù)雜的數(shù)據(jù)進(jìn)行響應(yīng),這也可以由ASP.NET的后端代碼完成。

  4、一個服務(wù)端頁面可以是一個擴展的第三方的頁面,也可以是本身的web頁或服務(wù)。

  以上的幾點如圖1所示


  實現(xiàn)基本的AJAX JavaScript方法

  我將JavaScript方法分成兩部分:調(diào)用特殊頁的JavaScript方法和一般的JavaScript方法。特殊的方法包括一個回調(diào)方法,它的作用是更新頁面內(nèi)容。而其它的AJAX方法負(fù)責(zé)建立一個XmlHttp對象,并向服務(wù)端發(fā)出一個異步的HTTP請求。

  建立的XmlHttp對象因客戶端瀏覽器的不同而有所差異。本文只考慮兩種瀏覽器:一個是Microsoft的IE系列瀏覽器;另一個是Mozilla系列瀏覽器,包括Mozilla Firefox、Netscape和Safari。我也在Opera瀏覽器上測試過,但我不能保證本文的代碼可以很好地運行Opera瀏覽器上。下面是如何建立XmlHttp對象的代碼:

function GetXmlHttpObject(handler)
{
 var objXmlHttp = null;
 if (!window.XMLHttpRequest)
 {
  // Microsoft
  objXmlHttp = GetMSXmlHttp();
  if (objXmlHttp != null)
  {
   objXmlHttp.onreadystatechange = handler;
  }
 }
 else
 {
  // Mozilla | Netscape | Safari
  objXmlHttp = new XMLHttpRequest();
  if (objXmlHttp != null)
  {
   objXmlHttp.onload = handler;
   objXmlHttp.onerror = handler;
  }
 }
 return objXmlHttp;
}

分享:判斷瀏覽器是否接受Cookies
 一種確定瀏覽器是否接受 Cookie 的方法是先編寫一個 Cookie,然后再嘗試讀取這個 Cookie。如果不能讀取這個 Cookie,則可以認(rèn)為該瀏覽器不接受 Cookie。   我編寫了一個簡單的示例來說明

共3頁上一頁123下一頁
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 天祝| 淳化县| 旺苍县| 永昌县| 二连浩特市| 富锦市| 商都县| 南木林县| 台山市| 博兴县| 潼南县| 贺兰县| 宕昌县| 平安县| 黄骅市| 府谷县| 汕尾市| 新乡市| 深泽县| 石首市| 朝阳区| 德格县| 沙河市| 大洼县| 新绛县| 寿阳县| 土默特左旗| 西安市| 阳西县| 讷河市| 福清市| 乐平市| 突泉县| 德保县| 嵊州市| 淳安县| 罗山县| 武定县| 横山县| 陕西省| 田阳县|