zoukankan      html  css  js  c++  java
  • MagicAjax使用手冊

    MagicAjax使用手冊
    ----------------------------------------------------------------------------------------------------
    0001:
        MagicAjax官方主頁:www.magicajax.net
    ----------------------------------------------------------------------------------------------------
    0002:
        MagicAjax的局限性:
        ●在AjaxPanel的AjaxCall過程中,如果有樣式變化,客戶端瀏覽器將不會刷新(除非使用MagicAjax的類庫處
    理)。
        ●FileUpload空間在AjaxPanel中無法使用。
    ----------------------------------------------------------------------------------------------------
    0003:
        如何去掉MagicAjax中的Loading:
        ●獲取MagicAjax的源代碼(如果升級到.NET 2.0,則要使用新生成的這個項目文件打開編譯)。
        ●打開MagicAjax源代碼中的AjaxCallObject.js文件,找到CreateWaitElement函數(代碼最後的一個函數)。
        ●可以修改為如下代碼:(去掉了Loading)
        function CreateWaitElement() {
            var elem = document.getElementById('__AjaxCall_Wait');
            if (!elem) {
                elem = document.createElement("div");
                elem.id = '__AjaxCall_Wait';
                elem.style.visibility = 'hidden';
                document.body.insertBefore(elem, document.body.lastChild);
            }
            waitElement = elem;
        }
        ●重新編譯項目即可。
    ----------------------------------------------------------------------------------------------------
    0004:
        MagicAjax的使用:
        ●添加MagicAjax.dll的引用。
        ●在工具箱中也添加MagicAjax.dll(這樣就可以直接拖拽控件到頁面上)。
        ●配置web.config:
        <?xml version="1.0" encoding="utf-8"?>
        <configuration>
          <configSections>
            <!--【1】為MagicAjax添加的配置-->
            <section name="magicAjax" type="MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax"/>
          </configSections>
          <!--【2】為MagicAjax添加的配置-->
          <magicAjax tracing="false">
            <pageStore/>
          </magicAjax>
          <appSettings/>
          <connectionStrings/>
          <system.web>
            <pages>
              <controls>
                <!--【3】為MagicAjax添加的配置-->
                <add namespace="MagicAjax.UI.Controls" assembly="MagicAjax" tagPrefix="ajax"/>
              </controls>
            </pages>
            <httpModules>
              <!--【4】為MagicAjax添加的配置-->
              <add name="MagicAjaxModule" type="MagicAjax.MagicAjaxModule, MagicAjax"/>
            </httpModules>
            <compilation debug="true">
              <assemblies>
                <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
              </assemblies>
            </compilation>
            <authentication mode="Windows"/>
          </system.web>
        </configuration>
    ----------------------------------------------------------------------------------------------------
    0005:
        MagicAjax很好的解決了腳本跨域問題,如果Ajax是在一個嵌入在Iframe的頁面中實現的,那麼微軟的Atlas是
    無法解決跨域問題(微軟官方已經說明)。那麼這種情況的Ajax實現可以使用MagicAjax和AjaxPro的實現。
    ----------------------------------------------------------------------------------------------------
    0006:
        CallTimer的使用:
        HTML部分:
        <ajax:AjaxPanel ID="AjaxPanel1" runat="server">
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
                <Columns>
                    <asp:BoundField HeaderText="進程名稱" DataField="ProcName" />
                    <asp:BoundField HeaderText="內存佔用率" DataField="ProcMemory" />
                </Columns>
            </asp:GridView>
        </ajax:AjaxPanel>

        源代碼部分:
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                MagicAjax.AjaxCallHelper.SetAjaxCallTimerInterval(500);
            }
            ShowProcesses();
        }

        private void ShowProcesses()
        {
            System.Diagnostics.Process[] processes = System.Diagnostics.Process.GetProcesses();

            System.Data.DataTable dt = new System.Data.DataTable("Processes");
            dt.Columns.Add("ProcName");
            dt.Columns.Add("ProcMemory", typeof(Int64));

            foreach (System.Diagnostics.Process process in processes)
            {
                dt.Rows.Add(new object[] { process.ProcessName, process.WorkingSet64 / 1000 });
            }

            System.Data.DataView dv = dt.DefaultView;
            dv.Sort = "ProcMemory DESC";

            this.GridView1.DataSource = dv;
            this.GridView1.DataBind();
        }
    ----------------------------------------------------------------------------------------------------
    0007:
        在AjaxPanel中使用消息提示框:MagicAjax.AjaxCallHelper.WriteAlert("你好");
    ----------------------------------------------------------------------------------------------------

  • 相关阅读:
    python 处理protobuf协议
    python 删除git Jenkinsfile文件
    如何用python操作XML文件
    Linux笔记
    JAVA bean为何要实现序列化
    mysql中给查询结果添加序号列
    生产问题之泛型自动推断(JDK1.7新特性)
    生产问题之StackOverflowError异常小记
    Linux下DB2指令总结
    简单理解TCP/IP协议
  • 原文地址:https://www.cnblogs.com/godwar/p/975958.html
Copyright © 2011-2022 走看看