新(xīn)疆軟件開發

本站首頁(yè) 軟件開發 成功案例 公(gōng)司新(xīn)聞 公(gōng)司簡介 客服中(zhōng)心 軟件技(jì )術 網站建設
  您現在的位置: 新(xīn)疆二域軟件開發公(gōng)司 >> 開發語言 >> 文(wén)章正文(wén)

AJAX原理(lǐ)的簡單範例

為(wèi)了讓各為(wèi)能(néng)夠了解什麽是AJAX,以下是一個AJAX的手工(gōng)範例(即不引用(yòng)任何的Library或AJAX framework),此範例頗為(wèi)精(jīng)要易懂,其作(zuò)用(yòng)主要是透過Client 端的Browser來即時監控Web 服務(wù)器資源或效能(néng)變化,各位隻要做過一遍範例就能(néng)夠了解AJAX在網頁(yè)開發上是多(duō)麽具(jù)有(yǒu)威力了。
先來看看效果圖:

 

本範例是一個簡單的AJAX例子,但麻雀雖小(xiǎo)五髒俱全,可(kě)由此窺見原始AJAX非同技(jì )術是如何運作(zuò)。不需要安(ān)裝(zhuāng)任何特殊的AJAX套件,步驟說明如下:

一 建立Web項目
首先在VS 2005(或VS.NET 2003)建立一個普通的WEB項目,或者您沒有(yǒu)VS開發工(gōng)具(jù),直接用(yòng)記事本建立也行。

二 建立Client端頁(yè)面
在Web專案中(zhōng)加入一個Client端頁(yè)面Client.htm,并将此頁(yè)面設定為(wèi)起始頁(yè),這個頁(yè)面會向Web伺服器網頁(yè)發出非同步呼叫請求,并且将伺服器回傳資料更新(xīn)到網頁(yè)元素中(zhōng),代碼如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<script language="javascript">
var XmlHttp=new ActiveXObject("Microsoft.XMLhttp");
function sendAJAX()
{
XmlHttp.Open("POST","Server.aspx",true);
XmlHttp.send(null);
XmlHttp.onreadystatechange=ServerProcess;
}
function ServerProcess()
{
if (XmlHttp.readystate==4 || XmlHttp.readystate=='complete')
{
document.getElementById('nameList').innerHTML
=XmlHttp.responsetext;
}
}
setInterval('sendAJAX()',1000);
</script>
</head>
<body>
<div id="nameList"></div>
</body>
</html>

三 建立Server端處理(lǐ)程式
另外在專案中(zhōng)加入一個Server.aspx網頁(yè)(含.cs),Server.aspx不需要添加任何代碼。
Server.aspx.cs 程序碼如下:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Diagnostics;
public partial class Server : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        PerformanceCounter myMemory = new PerformanceCounter();
        myMemory.CategoryName = "Memory";
        myMemory.CounterName = "Available KBytes";
        string txtResult = "-->服務(wù)器可(kě)以用(yòng)記憶體(tǐ)大小(xiǎo):" +
        myMemory.NextValue().ToString() + "KB";
        Response.Write(DateTime.Now.ToLongTimeString() + txtResult);
    }
}

說明:
首先記得引用(yòng)System.Diagnostics 命名(míng)空間,因為(wèi)PerformanceCounter 必須使用(yòng)該命名(míng)空間,
而PerformanceCounter類别可(kě)讓您監控Windows 作(zuò)業系統的各種效能(néng)計數器,在此透過它取得服務(wù)器每秒(miǎo)可(kě)用(yòng)記憶體(tǐ)大小(xiǎo)的變化情形。

執行Client.htm頁(yè)面,大約會花(huā)5秒(miǎo)啓始Performance-Counter物(wù)件,之後透過AJAX便可(kě)每秒(miǎo)獲得Server可(kě)用(yòng)記憶
體(tǐ)變化情形。當然用(yòng)Server Side的Timer也可(kě)以實現,但那種方式會造成Server的Loading爆增,人多(duō)的話還可(kě)能(néng)搞垮你的Server,但AJAX 就具(jù)有(yǒu)極佳的彈性與靈巧,透過AJAX您可(kě)以即時偵測到資料庫或事件的變化即時顯現在網頁(yè)上。

作(zuò)者:奚江華 | 文(wén)章來源:atlas.cnblogs.com | 更新(xīn)時間:2007-10-20 11:37:38

  • 上一篇文(wén)章:

  • 下一篇文(wén)章:

  • 相關文(wén)章:
    java反編譯工(gōng)具(jù)大盤點
    JAVA的Spring框架概述
    使用(yòng)Ajax時Java對象的序列化
    優化Ajax 為(wèi)網站減負
    軟件技(jì )術
    · 開發語言
    · Java技(jì )術
    · .Net技(jì )術
    · 數據庫開發
    最新(xīn)文(wén)章  
    ·搜集整理(lǐ)的asp.net的驗證方
    ·各種FOR循環結構的整理(lǐ)
    ·軟件項目開發中(zhōng)應該考慮那
    ·搜集整理(lǐ)的javascript sel
    ·軟件開發中(zhōng)項目經理(lǐ)有(yǒu)那些
    ·學(xué)習如何在Lambda表達式進
    ·C++基礎知識:結構體(tǐ)數據的
    ·C#實現短信發送程序的例子
    ·sun最近修補了一部分(fēn)java的
    ·rss定制的另外一種實現方式
    ·delphi實現利用(yòng)arp欺騙來實
    ·基礎學(xué)習:基于WF的流程框
    ·網絡編程中(zhōng)怎樣得知一次數
    ·如何逆序輸出單鏈表?
    ·軟件開發過程中(zhōng)的性能(néng)設計
    關于我們 | 軟件開發 | 下載試用(yòng) | 客服中(zhōng)心 | 聯系我們 | 友情鏈接 | 網站地圖 | 新(xīn)疆電(diàn)子地圖 |
    版權所有(yǒu) © 2016 新(xīn)疆二域軟件開發網 www.k8w.net All Rights Reserved 新(xīn)ICP備14003571号
    新(xīn)疆軟件開發總機:0991-4842803、4811639.
    客服QQ:596589785 ;地址:新(xīn)疆烏魯木(mù)齊北京中(zhōng)路華聯大廈A-5C 郵編:830000