<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    飛艷小屋

    程序--人生--哲學___________________歡迎艷兒的加入

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      52 Posts :: 175 Stories :: 107 Comments :: 0 Trackbacks
    關(guān)于Ajax.Net的快速入門

    現(xiàn)在的項目準備用ajax,用ajax.net實現(xiàn),而不是atlas,所以先看下ajax.net,Ajax.Net現(xiàn)在的最新版本是AjaxPro5.11.4.2,下載地址是:www.schwarz-interactive.de

    首先我們新建個項目,名字是AjaxPro,我用的是vs2005beta2版本。

    右擊站點名字點add reference添加對我們剛剛下載來的那個叫AjaxPro.2.dll的引用,如果你用的是vs2003,則添加對AjaxPro.dll的引用,然后我們在添加個web.config文件(很郁悶的是vs2005不再自動添加web.config文件拉),修改web.config如下:

    																										<system.web> <httpHandlers> 
    <add verb="POST,GET" path="ajaxpro/*.ashx" 
    type="AjaxPro.AjaxHandlerFactory, 
    AjaxPro.2"/> </httpHandlers>
    																								

    意思是所有的ajaxpro/*.ashx請求都由Ajax.PageHandlerFactory處理,而不是由默認的System.Web.UI.PageHandlerFactory處理程序工廠來處理。

    我們現(xiàn)在給Default.aspx.cs文件添加個名字空間namespace MyDemo,這里更加郁悶的是為什么vs2005beta2怎么不給你自動添加名字空間啊?和2003怎么完全不同呢?

    現(xiàn)在我們寫個AjaxMethod服務(wù)器端方法,他和普通的服務(wù)器方法唯一不同的地方就是他必須要在方法的上面添加個[AjaxPro.AjaxMethod],代碼如下:

    																										[AjaxPro.AjaxMethod]
    public DateTime GetServerTime()
    {
    return DateTime.Now;
    }
    [AjaxPro.AjaxMethod]public int 
    AddTwo(int firstInt, int secondInt)
    {
    return firstInt + secondInt;
    }
    																								

    我們還必須在Page_Load里面把這個類注冊下,如下:

    																										protected void Page_Load
    (object sender, EventArgs e)
    {
    AjaxPro.Utility.RegisterTypeForAjax
    (typeof(_Default));
    }
    																								

    這個時候我們還必須修改aspx頁面的指令行,因為我們在后臺搞了個名字空間,如下:Inherits="MyDemo._Default"也就是要把名字空間也寫上。我們再寫客戶端腳本來調(diào)用服務(wù)器方法。代碼里有詳細的注釋,前臺Default.aspx代碼:

    																										<%@ Page Language="C#" 
    AutoEventWireup="true"CodeFile="Default.aspx.cs" 
    Inherits="MyDemo._Default" %>
    <!DOCTYPE html PUBLIC "-
    //W3C//DTD XHTML 1.1//EN" 
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server"><title>Untitled Page
    </title></head><body><form id="form1"
    runat="server"><div><input id="Button1"
    type="button" value="獲得服務(wù)器時間" 
    onclick="getServerTime();" /><input 
    id="Text1" type="text" /><input 
    id="Text2" type="text" /><input
    id="Button2" type="button" 
    value="得到兩個文本框的和" 
    onclick="add(document.getElementById('Text1').
    value,document.getElementById('Text2').value)" 
    /></div></form><script 
    type="text/javascript">
    function getServerTime()
    {
    //MyDemo._Default.GetServerTime()
    得到從服務(wù)器傳來的數(shù)據(jù)是object,
    要寫.valuealert
    (MyDemo._Default.GetServerTime().value);
    }
    function add(a,b)
    {
    //把文本框的值轉(zhuǎn)換成intvar 
    a1 = parseInt(a);var b1 = parseInt(b);
    //第1、2參數(shù)為服務(wù)器方法所需要的參數(shù),
    后面一個是如果服務(wù)器返回數(shù)據(jù)
    //客戶端要處理這些數(shù)據(jù)的js函數(shù)名,
    他有個參數(shù)就是從服務(wù)器傳來的數(shù)據(jù)
    MyDemo._Default.AddTwo(a1,b1,getAdd);
    }
    function getAdd(rel)
    {
    //要加上.valuealert(rel.value);
    }
    </script></body></html>
    后臺Default.aspx.cs代碼:
    using System;using System.Data;
    using System.Configuration;
    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;
    namespace MyDemo
    {
    public partial class _Default : 
    System.Web.UI.Page{protected void 
    Page_Load(object sender, EventArgs e){AjaxPro.Utility.RegisterTypeForAjax
    (typeof(_Default));
    }
    [AjaxPro.AjaxMethod]public 
    DateTime GetServerTime()
    {return DateTime.Now;
    }[AjaxPro.AjaxMethod]public int AddTwo
    (int firstInt, int secondInt)
    {
    return firstInt + secondInt;
    }}} 
    按F5運行結(jié)果如下,
    firefox里面測試通過: 
    using System;using System.Data;
    using System.Configuration;
    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;
    namespace MyDemo
    {
    public partial class _Default :
    System.Web.UI.Page
    {
    protected void Page_Load
    (object sender, EventArgs e)
    {AjaxPro.Utility.RegisterTypeForAjax
    (typeof(_Default));}
    [AjaxPro.AjaxMethod]public DateTime 
    GetServerTime(){return DateTime.Now;
    }
    [AjaxPro.AjaxMethod]public 
    int AddTwo(int firstInt, 
    int secondInt)
    {return firstInt + secondInt;}}}
    																								
    posted on 2006-04-19 10:24 天外飛仙 閱讀(319) 評論(0)  編輯  收藏 所屬分類: .net
    主站蜘蛛池模板: 暖暖免费高清日本中文| 18女人腿打开无遮掩免费| 日韩高清在线高清免费| 亚洲AV无码一区二区三区牛牛| 国产片AV片永久免费观看| 成全高清在线观看免费 | 亚洲人成免费电影| 亚洲高清在线视频| 污污网站18禁在线永久免费观看| 在线观看av永久免费| 亚洲综合偷自成人网第页色| 最近免费中文字幕大全| 亚洲伊人久久大香线蕉苏妲己| 免费一区二区三区在线视频 | 日本成年免费网站| 亚洲免费黄色网址| 亚洲精品国产日韩无码AV永久免费网| 美女视频黄的全免费视频网站| 亚洲w码欧洲s码免费| 95免费观看体验区视频| 亚洲人成毛片线播放| 在线观看免费国产视频| 久草免费福利在线| 亚洲高清日韩精品第一区| 黄网站免费在线观看| 久久久久亚洲精品中文字幕| 99亚洲乱人伦aⅴ精品| 无码人妻一区二区三区免费手机| 亚洲成av人在线观看网站| 国产亚洲AV手机在线观看| 99在线观看视频免费| 亚洲AV无码不卡无码| 在线视频免费观看爽爽爽| 国产区图片区小说区亚洲区| 亚洲国产精品VA在线观看麻豆| 国产免费丝袜调教视频| 男女男精品网站免费观看| 亚洲人成在线播放网站岛国| 日本无卡码免费一区二区三区| a级毛片毛片免费观看久潮| 亚洲欧美aⅴ在线资源|