Burnett

淡定,执着......
posts - 29, comments - 109, trackbacks - 22, articles - 10
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Ajax初探:MagicAjax使用方法

Posted on 2006-03-10 18:04 Burnett 阅读(...) 评论(...) 编辑 收藏

   这几天接手了一个BS模式的程序,心血来潮,准备把AJAX风格的页面引入进来,倒腾了一会,把magicajax的一个初级的DEMO做了出来,现在把整个过程放出来.
  1.到http://sourceforge.net/projects/magicajax下载最新版本的MA,然后解压缩,导入到你的工具箱中(如图一,图二,图三所示),
图一

图二

图三



然后就会见到四个新加入的控件(如图四),分别是
  • AjaxPanel
    这个是基本的异步通讯容器,你只要把以前需要PostBack的组件(比如按钮)放在这个Panel里就可以实现无刷新页面的效果了
  • AjaxZone
    这个组件的作用主要是获取在一个回调(CallBack)陷入中的状态,说明书上说使用这个组件可以稍稍提高服务器的响应速度.
  • ClientEventTrigger
    捕获一个客户端事件的触发器,需要注意的是,需要把它的事件名称与客户端触发的事件名称对应起来,并且ControlID属性必须和发布事件的客户端的属性吻合.
  • KeyClientEventWrapper
    这个是客户端事件的捕获器,用来捕获客户端激发的事件,比如点击click,聚焦forcus等等.
    图四

    在工程的web.config里添加下面几处配置:
     <configSections>
        <section name="magicAjax"
       type="MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax"/>
      </configSections>

      <magicAjax
      outputCompareMode="HashCode"
      tracing="false">
        <pageStore
       mode="NoStore"
       unloadStoredPage="false"
       cacheTimeout="5"
       maxConcurrentPages="5"
       maxPagesLimitAlert="false"
      />
      </magicAjax>

    在system.web节点里添加
        <httpModules>
          <add name="MagicAjaxModule" type="MagicAjax.MagicAjaxModule, MagicAjax"/>
        </httpModules>

    下面就进入了实质性的阶段,使用MagicAjax.net建立一个无刷新的显示时间操作.

    打开一个aspx文件,然后在上边拖入一个AjaxPanel,然后拖入一个textbox和button(图五),然后的事情和普通方式的调用一样了.在button的click事件响应逻辑里添加:
     tb_time.Text = System.DateTime.Now.ToString("yyyy-MM-dd hh:mm;ss");

    图五
    结果如图六,就这么简单一步,试试吧.

    图六

    PS:腾讯的浏览器老是出故障.好不容易写到一半的文章又没有了,重头来过吧.还有,这个是第一次写图文教程,希望老鸟慢点砸.