zoukankan      html  css  js  c++  java
  • Ext.Net系列:二Event之DirectEvents

          笔者认为学习任何一门技术一组控件一个框架,无外乎四步走。第一步阅读官方示例,查看示例实现代码。第二步使用该技术完成一个小项目,在实现项目的具体功能时参考相似的官方示例且结合自身相似性理解和Baidu Google一下便能初步使用该技术。第三步:寻找主要使用该技术实现的开源产品并进行研究,总结其中比较优秀的思想和技术运用模式,撰写文章以此熟悉该技术。到了这一步在日常开发中便能独自使用该技术。第四步:钻研源代码,研究该技术的实现原理 。完成了这一步便是高手。

         反观自己以前的学习方式,对许多技术总是只做到了第一步,只能初步的使用该技术而不敢学熟悉精通。现在发现自己真的什么都知道什么都不精通。悲哀的过去,是该停止了,所有开始写教程和大家一起学习,希望大家支持与包容!

        Ext.Net中与Ajax交互主要是控件的各种事件,事件贯穿整个生命圈。我们开始学习Ext.Net,便从Event开始

        Event分三类:DirectEvent、DirectMethod(方法属性)和Listener。今天我们只讲DirectEvent

    1、DirectEvent属性

              
    属性名称 描述 默认值

    After

    执行该JS方法后立即响应服务器事件

    方法参数:

    el:触发事件的对象,

    extraParams:参数对象

    ""

    Before

    响应服务器事件之前执行的JS方法

    方法参数:

    el:触发事件的对象,

    extraParams:参数对象

    type:类型 (event)

    action:行为(click,dbclick)

    extraParams:参数对象

    ""

    Failure

    响应服务器事件之后如果失败则执行该JS方法

    方法参数:

    response:响应信息对象

    result: 响应结果对象

    control:触发该服务器事件的对象

    type:类型

    action:行为

    extraParams:参数对象

     

    ""

    Success

    响应服务器事件之后如果失败则执行该JS方法

    方法参数:

    response:响应信息对象

    result: 响应结果对象

    control:触发该服务器事件的对象

    type:类型

    action:行为

    extraParams:参数对象

    ""

    Complete

    响应服务器事件后作为最后执行的标识整个响应完成的JS方法

    方法参数:

    success:是否成功

    response:响应信息对象

    result: 响应结果对象

    control:触发该服务器事件的对象

    type:类型

    action:行为

    extraParams:参数对象

    ""

    CleanRequest

    如果为True则在发送Request请求时添加额外的参数

    在ExtraParams集合中

    true

    Delay

    响应延缓时间,单位:毫秒

    20

    DisableCaching

    如果值为true则在请求的URL上添加由

    DisableCachingParam属性值作为参数名,值为当前时间time的参数

    true

    DisableCachingParam

    启用缓存时作为URl上添加的Get参数名称。

    _dc

    FormId

    如果不为空则使用该表单,否则使用该页面的带有runat="server"的表单,如果没有runat="server"的表单则使用当前页面的URL的配置信息submitDirectEventConfig

    ""

    IsUpload

    标识该表单是否为文件上传

    false

    Json

    不清楚,希望知道的朋友回复!  

    Method

    表单Method。

    Default, GET, POST, OPTIONS, HEAD, PUT, DELETE, TRACE, CONNECT

    Default

    Normalized

    如果为false在响应事件时传递到浏览器事件处理函数对象为Ext.EventObject

    false

    Scope

    响应的上下文对象。

    指定为其他标签时可填写为 “${ID}”

    this

    PreventDefault

    是否阻止默认的action

    false

    ShowWarningOnFailure

    是否窗口显示错误信息

    true

    Single

    事件是否只执行第一次并移除事件

    false

    Timeout

    请求超时时间。单位毫秒

    30000

    Type

    提交方式。Submit 或者是Load

    Submit将提交Form表单

    Load请向URL属性指定的url发生请求。如果没有制单URL属性则向当前页面发生请求

    Submit

    Url

    发送请求的URL .如果为空则指向本页面URL

    ""

    ViewStateMode

     

    保存视图模式

    继承   Inherit

    禁用:Disabled

    启用:Enabled

    Inherit

    2.DirectEvent示例

         DirectEvent一般分两种方式进行注册。第一种集中在页面ResourceManager的CustomDirectEvents下,第二种是单个注册到具体控件中

         采用第一种方式的好处是可以为多个标签注册事件,而无需在每一个需要注册事件的控件下重复实现相同事件。同时也能将事件注册到非Ext.Net控件下包括所有HTML标签

    示例1:

    <script runat="server"> 
            protected void UpdateTime(object sender, DirectEventArgs e) 
            { 
                X.Msg.Alert("当前时间是:", DateTime.Now.ToString("yyyy-MM-dd hh:mm:dd ss:ms")).Show(); 
    
            } 
        </script> 
    
    <form id="form1" runat="server"  > 
            <!--Target 可以是标签的ID也可以是一个集合。 
              当Target是一个ID时采用Ext.get("id")获取元素当Target是一个集合时采用Ext.select("filter")获取元素 
           --> 
            <ext:ResourceManager ID="ResourceManager1" runat="server"> 
                <CustomDirectEvents> 
                  <ext:DirectEvent Target="${input1}" OnEvent="UpdateTime" />                  
                  <ext:DirectEvent Target="btn1" OnEvent="UpdateTime"/>  
                  <ext:DirectEvent Target="${[class='showTime']}" OnEvent="UpdateTime" />  
                </CustomDirectEvents> 
            </ext:ResourceManager> 
            <ext:Button ID="btn1" runat="server" Text="点击弹出时间窗口"  /> 
            <input id="input1" type="button" value="点击弹出时间窗口" /> 
            <div> 
                <a href="#" class="showTime">超链接</a> 
                <input type="button" value="按钮" class="showTime" /> 
                <span class="showTime">span元素</span> 
            </div>
    </form> 

    Ext.Net系列:二Event之DirectEvent 示例1-调用事件顺序

    Ext.Net系列:二Event之DirectEvent 示例2(Delay)

    Ext.Net系列:二Event之DirectEvent 示例3-DisableCaching

    老虞,Gopher,golang主页:http://howdo.cnblogs.com/
  • 相关阅读:
    云计算openstack核心组件——keystone身份认证服务(5)
    分布式存储ceph——(6)ceph 讲解
    分布式存储ceph——(5)ceph osd故障硬盘更换
    分布式存储ceph——(4)ceph 添加/删除osd
    kvm虚拟化介绍(1)
    kvm虚拟机管理(2)
    云计算openstack共享组件——Memcache 缓存系统(4)
    云计算openstack共享组件——消息队列rabbitmq(3)
    妹子UI-yepnope.js使用详解及示例分享(异步加载数据)
    前端组件整理
  • 原文地址:https://www.cnblogs.com/howDo/p/2039685.html
Copyright © 2011-2022 走看看