900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 关于用户自定义控件与引用该控件的页面之间的javascript脚本冲突

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

时间:2021-10-13 01:14:50

相关推荐

关于用户自定义控件与引用该控件的页面之间的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.但是编译通不过,想知道怎么解决.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。