关于用户自定义控件与引用该控件的页面之间的javascript脚本冲突

        前几天为客户做WEB系统的时候,需要在每个页面的header 上面加个“退出系统”的连接;而且要有确认对话框。一般就是通过添加“ this.LinkButton.Attributes.Add("OnClick","javascript:return confirm('您确定要退出系统吗?')") ”脚本。然而由于在主页面也有相类似的提示框,所以在Framwork1.1下可能会出现“htmlfile:指针无效”,然后整个页面无法加载CSS样式。
        这里给出了个解决的办法,具体的看下面:

1--可以将自定义控件的子控件(与javascript相关连,如 LinkButton LbnQuit)定义成 public属性
2--在引用该控件的页面添加 对该自定义空间的引用,如:
   public bankofchina.userContorl.header Header1;
   该自定义在html文件中的定义为:
   <uc1:header id="Header1" runat="server"></uc1:header>
   这样我们就像定义了一个类似WebControl的控件。
  
3--在引用该控件的页面里面添加这么一条语句:
   Header1.LbnQuit.Attributes.Add("OnClick","javascript:return confirm('您确信要退出系统?');");
4--由于上面的事件给LbnQuit定义了个点击该控件便弹出对话框的功能,这时候如果用户“确认提示”,应该能继续
   做下面的事情,例如:
   Session.Clear();//window.opener=null;
   Session["class"]="-1";  
   //Response.Write("<script language=javascript>self.close();</script>");//这个不能添加的
   为了让上面的能够执行下去,我们可以定义一个单击事件
   private void LbnQuit_Click(object sender, System.EventArgs e)

小结:
    经过上面的几个步骤,我们就可以实现如下流程的功能:
    页面显示该控件-->单击该控件-->弹出确认对话框-->确认提示--->执行定义的事件处理函数-->结束
                                                    │                                                                               ↑
                                                     ---------------取消确认-----------------------------------

   
    本来想设置它为 public static,然后在Application_Start()里 初始话这个LinkButton.但是编译通不过,想知道怎么解决.

转载于:https://www.cnblogs.com/3zfp/archive/2005/03/12/117349.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值