在ASP.NET中使用無框架的Ajax事例

作者: 緣夢  來源: 博客園  發布時間: 2008-09-09 20:11  閱讀: 5162 次  推薦: 0   原文鏈接   [收藏]  

  可能.net程序員手寫方法的時候很少,在初學時,就被前輩灌輸使用框架!用系統自帶方法!這個概念,直接導致我們某方面相對孱弱。這也是為什么,用javaAjax例子信手拈來,而用C#寫,卻困難重重——網上很難找到不用Ajax.dll實現的例子。好了,閑話不說了,進入主題:     我們需要兩個頁面a.aspxb.aspxa頁面代碼如下(就用最常見的,兩個下拉列表連動的例子):

Code
 

 

a頁面觸發onchange事件后,我們進入寫在a頁面的SetBList()方法中,這里將完整的js列出來:

Code
 

 

b.aspx頁面將html部分全部刪除,僅僅留一行:

Code
 

 

原因是我們a頁面要求返回的xml文檔,因此,我們將Html標簽部分刪除。然后在b頁面的Page_Load方法中,對數據庫進行操作,然后數據寫成xml的格式,例如:

Code
//     
// 數據庫操作,得到DataTable dt

string xml = "<Data>";
foreach(DataRow row in dt.Rows)  {
    xml += "<City>";
    xml += "<CityName>" + row["CityName"] + "</CityName>";
    xml += "<CityCode>" + row["CityCode"] + "</CityCode>";
    xml += "</City>";
}
xml += "</Data>";

//  清頁面格式,寫xml
Response.ClearContent();
Response.Cache.SetNoStore();
Response.ContentType = "text/xml";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.Write(xml);
 

 

在整體運行之前可以先將b頁面測試一下,如果得到類似如下結果,則說明,數據部分是沒問題的。

 

Code
- <Data>
    - <Vendor>
        <VendorId>7</VendorId> 
       <VendorName>千千</VendorName> 
   </Vendor>
</Data>
 

 

0
0
 
標簽:C# Ajax
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()