最近作一模組 ,即時查詢日誌系統。
其思路是:1:載入網頁時,從資料庫讀x條記錄,顯示在頁面中。2:設定重新整理時間,動態從資料庫中讀取記錄,在用戶端進行
局部重新整理。由於是局部重新整理,所以就用到了ajax技術.
具體做法是:
1:從網站http://ajax.schwarz-interactive.de/csharpsample/default.aspx 下載ajax.dll動態串連庫.
2:配置web.config
<system.web>
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
</httpHandlers>
</system.web>
3:在網頁中加入以下代碼
<HEAD>
<script language="javascript" src="ajax/common.ashx"></script>
<script language="javascript" src="ajax/AjaxWebApp.Demo,AjaxWebApp.ashx"></script>
</HEAD>
備忘:其中AjaxWebApp.Demo中:AjaxWebApp是命名空間名字,Demo是一類名。
4:在Page_Load 中加入Ajax.Utility.RegisterTypeForAjax(typeof( AjaxWebApp.Demo)) 語句。
5:開始在Demo類中寫方法:
格式:[Ajax.AjaxMethod]
public string GetDataSet()
{
//讀資料的代碼。
return HTML;
}
6:在web頁的HTML代碼中調用此方法。
<script language="javascript">
Demo.GetDataSet(GetDataSet_callback) ;
function GetDataSet_callback(response)
{
var retValue = response.value;
//處理retValue code
}
</script>
7:到現在已完成ajax的基本操作。
8:下面實現動態從伺服器端擷取資料:
利用javascript 中利用
setInterval("getdata();",refreshTime);
第6部中的代碼改為
<script language="javascript">
function getdata()
{
Demo.GetDataSet(GetDataSet_callback) ;
}
function GetDataSet_callback(response)
{
var retValue = response.value;
//處理retValue code
}
setInterval("getdata();",refreshTime);
//refreshTime是自訂重新整理時間
</script>
倒此,加上自己要處理資料的代碼,就可以了!