1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>
  2.  
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4.  
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head runat="server">
  7. <title></title>
  8. <script type="text/javascript">
  9.  
  10. function GetDetailsContainer(id) {
  11. return document.getElementById("Detail" + id.toString());
  12. }
  13. function ShowDetails(id) {
  14.  
  15. GetDetailsContainer(id).innerHTML = "Loading…";
  16. Callback1.PerformCallback(id); //回调方法,将调用服务器端注册的Callback方法。
  17. //1:表示第一个div (服务器端:e.Parameter = 1)
  18. //2:表示第二个div (服务器端:e.Parameter = 2)
  19. //3:表示第三个div (服务器端:e.Parameter = 3)
  20.  
  21. }
  22.  
  23. /*
  24. -------------------------------------
  25. Callback1.PerformCallback(parameter);
  26. PerformCallback方法会调用Callback1服务器端的ASPxCallback1_Callback()方法,以完成和服务器
  27. 端的通信。所以在服务器端一定要注册ASPxCallback1_Callback方法,以完成指定的操作。
  28. 同时,PerformCallback()中的参数可有可无,类型为string,当有参数时,服务器端可通过ASPxCallback1_Callback()
  29. 中的 ( CallbackEventArgs e) e.Parameter来获得,并通过e.Result参数返回结果值。
  30. 此时,就可以通过执行Client端的CallbackComplete方法来获取执行的方法。
  31.  
  32. 总结:
  33. 1 向页面添加CallBack组件,并设置ClientInstanceName属性(客户端标识,如 ClientInstanceName="Callback1")。
  34. 2 注册CallBack组件的服务器端事件ASPxCallback_Callback。
  35. 3 注册CallBack组件的CallbackComplete事件,用来处理回调完之后的操作,并可通过参数e获取parameter和result的值。
  36. 4 在客户端用户CallBack组件的客户端方法PerformCallback方法,以调用服务器端的ASPxCallback_Callback事件。
  37. 代码:Callback1.PerformCallback(id)
  38. 5 CallBack组件自动调用CallbackComplete事件,完成此次操作。
  39. */
  40. </script>
  41. </head>
  42. <body>
  43. <form id="form1" runat="server">
  44. <div>
  45. <div id="Detail1">
  46. <a href="javascript:ShowDetails('1');" >Show Detail </a>
  47. <br />
  48. </div>
  49. <div id="Detail2">
  50. <a href="javascript:ShowDetails('2');">Show Detail </a>
  51. <br />
  52. </div>
  53. <div id="Detail3">
  54. <a href="javascript:ShowDetails('3');">Show Detail </a>
  55. <br />
  56. </div>
  57.  
  58. <dx:ASPxCallback ID="ASPxCallback1" runat="server"
  59. ClientInstanceName="Callback1" oncallback="ASPxCallback1_Callback">
  60. <ClientSideEvents CallbackComplete="function(s, e) {
  61. var element = GetDetailsContainer(e.parameter);
  62. element.innerHTML = e.result;
  63.  
  64. }" />
  65. </dx:ASPxCallback>
  66.  
  67. <!--
  68. -------------------------------------------------
  69. CallbackComplete 方法原型:
  70. function ASPxClientCallbackCompleteEventHandler(
  71. source : object,
  72. e : ASPxClientCallbackCompleteEventArgs
  73. ) : Void;
  74. parameter:获取AspxCallBack进行回调的参数值。
  75. result:获取回调之后的结果值。
  76.  
  77. 这个方法会在回调完成之后自动的调用。
  78. ------------------------------------------------
  79. -->
  80.  
  81. </div>
  82. </form>
  83. </body>
  84. </html>
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7.  
  8. public partial class Default3 : System.Web.UI.Page
  9. {
  10. protected void Page_Load(object sender, EventArgs e)
  11. {
  12.  
  13. }
  14.  
  15. protected void ASPxCallback1_Callback(object source, DevExpress.Web.CallbackEventArgs e)
  16. {
  17. //休息3秒,表示服务器在工作中
  18. System.Threading.Thread.Sleep();
  19.  
  20. switch (e.Parameter)
  21. {
  22. case "":
  23. e.Result = "WCF分布式开发步步为赢(1):WCF分布式框架基础概念";
  24. break;
  25. case "":
  26. e.Result = "WCF分布式开发步步为赢(2)自定义托管宿主WCF解决方案开发配置过程详解";
  27. break;
  28. case "":
  29. e.Result = "WCF分布式开发步步为赢(3)WCF服务元数据交换、配置及编程开发";
  30. break;
  31. }
  32.  
  33. }
  34. }

ASPxCallback组件(珍藏版)的更多相关文章

  1. ASPxCallback控件

    ASPxCallback控件简单来的来说是一个数据回调控件,即不刷新事个页面来展现数据,主要是通过注册客户端事件与服务器端的事件来相互通信完成任务. 如何使用ASPXCallback: 向页面添加Ca ...

  2. devexpress控件之ASPxCallback

    ASPxCallback主要是通过注册客户端事件与服务器端事件来相互通信完成任务.ASPxCallback控件为我们封装了大量的Ajax操作,使用起来非常的方便,如果页面中遇到需要局部刷的操作而又不想 ...

  3. DevExpress组件AspxCallBack之传递数值到客户端多个控件

    AspxCallBack从服务器传值到客户端单个控件可以用CallbackEventArgs的e.Result来传值,下面是传值多个控件的做法. ASPX页面代码: <dx:ASPxCallba ...

  4. 如约而至:微信自用的移动端IM网络层跨平台组件库Mars已正式开源

    1.前言 关于微信内部正在使用的网络层封装库Mars开源的消息,1个多月前就已满天飞(参见<微信Mars:微信内部正在使用的网络层封装库,即将开源>),不过微信团队没有失约,微信Mars ...

  5. 【转】如约而至:微信自用的移动端IM网络层跨平台组件库Mars已正式开源

    网上看到关于微信官方的跨平台跨业务的终端基础组件Mars的介绍文章,转载这这里.源代码: https://github.com/Tencent/mars作者:男人链接:https://zhuanlan ...

  6. ExtJS 4.2 评分组件

    上一文章是扩展ExtJS自带的Date组件.在这里将创建一个评分组件. 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2上的一个RatingStar ...

  7. react组件的生命周期

    写在前面: 阅读了多遍文章之后,自己总结了一个.一遍加强记忆,和日后回顾. 一.实例化(初始化) var Button = React.createClass({ getInitialState: f ...

  8. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  9. Angular2入门系列教程3-多个组件,主从关系

    上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...

随机推荐

  1. leedcode_贪心算法系列

    861. 翻转矩阵后的得分 思路: 行首的权值最大,故首先将其置1; 每列由于权值相同,故只需要将0多于1的情况反转即可 763. 划分字母区间 思路: 1.计算每个字母的最右边界下标,并记录到新数组 ...

  2. html文件在head标签中引入js地址和直接写js代码,所用时间是不同的,因为引入js地址,文件加载的时候需要通过通讯协议去解析地址,读取外部文件

    html文件在head标签中引入js地址和直接写js代码,所用时间是不同的,因为引入js地址,文件加载的时候需要通过通讯协议去解析地址,读取外部文件

  3. [转]Android 代码自动提示功能

    源地址http://blog.sina.com.cn/s/blog_7dbac12501019mbh.html 或者http://blog.csdn.net/longvslove/article/de ...

  4. 廖雪峰Java2面向对象编程-5包和classpath-4classpath和jar

    1.classpath 1.1classpath定义 classpath是一个环境变量 classpath指示JVM如何搜索class classpath设置的搜索路径与操作系统相关 * window ...

  5. UTC时间和普通时间的区别

            UTC时间 [root@openstack01 ~]# timedatectl Local time: Sat 2018-08-18 23:04:24 CST Universal ti ...

  6. view之Scroller工具类和GestureDetector的简单用法

    转载:http://ipjmc.iteye.com/blog/1615828 Android里Scroller类是为了实现View平滑滚动的一个Helper类.通常在自定义的View时使用,在View ...

  7. 后台对象转化成json数据返回给前端

    一.介绍 JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包,主要就是用来解析Json数据 二.下载jar依赖包:可以去这里下 ...

  8. Anaconda(python3.6)中使用python2.7

    因为我现在安装的是最新版Anaconda3,其自带的Python版本为3.6,如果我们需要添加2.7版本的Python,可以进行如下操作.(同理,如果有人安装的是Anaconda2需要添加Python ...

  9. selenium在scrapy中的应用

    引入 在通过scrapy框架进行某些网站数据爬取的时候,往往会碰到页面动态数据加载的情况发生,如果直接使用scrapy对其url发请求,是绝对获取不到那部分动态加载出来的数据值.但是通过观察我们会发现 ...

  10. JS+Ajax+Servlet:记录页面访问时间

    1.前端JS记录页面访问时间 1.1JQuery版本: <script type="text/javascript" src="js/jquery.min.js&q ...