zoukankan      html  css  js  c++  java
  • PageLoad中抓取Button Click事件

    遇到一种需求,User要求每点一个Button,都要记录log,这可就比较麻烦了~
    想到两种解决的方式
    1.在PageLoad事件中进行处理,抓到Button Click事件,进行记录log
    2.客制一个Button控件,在Button的基类中进行处理

    目前找到第一种事项的方法,只是感觉如果页面元素比较多,可能会比较慢,还未测试过
    如果取的ImageButton,那么从Page.Request.Form中取会的buttonID则会带有ImageButtond 的坐标信息,
    buttonID.X 和 buttonID.Y,所以在Page.FindControl的时候,需要将buttonID的.X或者.Y去掉,否则FindControl是找不到这个ImageButton的

        protected void PageBase_Load(object sender, EventArgs e)
        
    {
            
    foreach (string buttonID in this.Page.Request.Form)
            
    {
                
    //Page Load时抓取Request 的 Button ID
                Control pageControl = this.Page.FindControl(buttonID);
                
    if (pageControl is Button)
                
    {
                    
    //this.Page.Response.Write(pageControl.ID + "; " + pageControl.ClientID + ";<br/>");
                }

                
    else if (pageControl is ImageButton)
                
    {
                }

            }

        }

    第二种方式理论上如下方式即可实现,只是还没有进行测试

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;

    /// <summary>
    /// Summary description for LogButton
    /// </summary>

    public class LogButton : Button
    {
        
    public LogButton()
        
    {
            
    //
            
    // TODO: Add constructor logic here
            
    //
        }


        
    protected override void OnClick(EventArgs e)
        
    {
            
    base.OnClick(e);
            
    //Save Log
        }

    }
  • 相关阅读:
    Linux关机命令详解
    这二个月都在失眠中。
    GMAIL绑定自己的域名MX解析出现错误
    又上火了。
    FTP命令
    怎样做反向域名解析?
    linux 一些常用到的命令。
    LINUX怎么换IP。
    关于 MOD 和 \ 选择
    WIN2000和WIN2003连备份机的疑问
  • 原文地址:https://www.cnblogs.com/forward/p/1085131.html
Copyright © 2011-2022 走看看