<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
    主站蜘蛛池模板: 精品国产免费观看久久久| 国产l精品国产亚洲区在线观看| 曰批免费视频播放免费| 亚洲香蕉成人AV网站在线观看| 久久精品中文字幕免费| 亚洲综合久久精品无码色欲| 亚洲人成影院在线无码观看| 99久热只有精品视频免费看| 亚洲av日韩精品久久久久久a| 亚洲精品无码永久中文字幕| 黄页网站免费观看| 国产免费高清69式视频在线观看| 亚洲中文无码a∨在线观看| 亚洲精品A在线观看| 久草视频免费在线| 久久av免费天堂小草播放| 久久久久se色偷偷亚洲精品av| 亚洲性日韩精品一区二区三区| 韩国免费一级成人毛片| 成人A毛片免费观看网站| 久久亚洲国产最新网站| 亚洲av激情无码专区在线播放| 国产亚洲精品免费| 97人妻无码一区二区精品免费| av午夜福利一片免费看久久| 亚洲欧美日韩一区二区三区在线| 亚洲欧洲日产国码无码网站| 手机看片久久国产免费| 37pao成人国产永久免费视频 | a免费毛片在线播放| 亚洲Av高清一区二区三区| 国产亚洲一区二区三区在线| 国产小视频在线免费| 嫖丰满老熟妇AAAA片免费看| 今天免费中文字幕视频| 免费一区二区无码视频在线播放| 亚洲欧美熟妇综合久久久久| www.亚洲成在线| 亚洲日韩乱码久久久久久| 亚洲AV无码一区东京热| 国产AV无码专区亚洲AV漫画|