zoukankan      html  css  js  c++  java
  • ICallbackEventHandler使用

    后端:页面需继承ICallbackEventHandler

     protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
    
                    string strRefrence = string.Empty;
                    strRefrence = Page.ClientScript.GetCallbackEventReference(this, "arg", "ReceiveDataFromServer", "context"); // 这里ReceiveDataFromServer为客户端接收回调结果的JS方法,含一个传入参数
    
                    string strCallBack = string.Empty;
                    strCallBack = "function CallBackToTheServer(arg, context) {" + strRefrence + "};";
    
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "CallBackToTheServer", strCallBack, true);  // CallBackToTheServer,JS方法,发出回调请求
    
                }
    
            }
            #region ICallbackEventHandler Members
    
            private string strTimeFormat;
    
            public string GetCallbackResult()
            {
                if (strTimeFormat != "" && strTimeFormat == "12")
                {
                    return DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss(12小时制)");
                }
                else
                {
                    return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss(24小时制)");
                }
            }
    
            public void RaiseCallbackEvent(string eventArgument)
            {
                strTimeFormat = eventArgument;
            }
    
            #endregion

    前端:

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <script>
            function ReceiveDataFromServer(valueReturnFromServer) {
                document.getElementById("ServerTime").innerHTML = valueReturnFromServer;
            }
    
            function GetServerTime(format) {
                CallBackToTheServer(format, "");
            }
    
        </script>
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
           
    
            <div>
                <asp:Button ID="btnShow12" runat="server" Text="获取服务器时间(12小时制)" OnClientClick="javascript:GetServerTime(12);return false;" /><br />
                <asp:Button ID="btnShow24" runat="server" Text="获取服务器时间(24小时制)" OnClientClick="javascript:GetServerTime(24);return false;" /><br />
                <br />
                <span id="ServerTime"><%= DateTime.Now.ToString("yyyy-MM-dd HHHH:mm:ss") %></span>&nbsp;
            </div>
        </form>
    </body>
    </html>
  • 相关阅读:
    element 三级复选框
    element 复选框问题
    vue 的样式穿透(深度选择器) >>>
    随笔,用于直接复制粘贴
    element 弹窗无法重新赋值的问题
    @vue/cli 4.2.3版本的本地json读取和跨域配置(与旧版本vue不同)
    element表格及接口的对接
    axios的post请求即自动刷新
    Puppeteer 安装及失败原因
    Redis的安装
  • 原文地址:https://www.cnblogs.com/shikyoh/p/3479900.html
Copyright © 2011-2022 走看看