updatePanel、自定义控件、弹出提示

首先创建一个自定义控件:

前台代码:

<div>
<asp:UpdatePanel ID="upl" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="自定义控件中updatepanel里"
onclick
="Button1_Click" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div>
<asp:Button ID="Button2" runat="server" Text="自定义控件中不在updatepanel里"
onclick
="Button2_Click" />
</div>

后台代码:

protected void Button1_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(
this, this.GetType(), "Manage", "window.setTimeout('alert(\"" + "我在自定义控件中,而且还在updatepanel里面" + "\");',0);", true);
}

protected void Button2_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(
this, this.GetType(), "Manage", "window.setTimeout('alert(\"" + "我在自定义控件中,但是不在updatepanel里面" + "\");',0);", true);

}

在页面中引用该自定义控件:

前台代码:

<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="页面中updatepanel里"
onclick
="Button1_Click" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div>
<asp:Button ID="Button2" runat="server" Text="页面中不在updatepanel里"
onclick
="Button2_Click" />
</div>
<UPL:Test ID="upl" runat="server" />

后台代码:

protected void Button1_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(
this, this.GetType(), "Manage", "window.setTimeout('alert(\"" + "我在页面中,而且还在updatepanel里面" + "\");',0);", true);

}

protected void Button2_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(
this, this.GetType(), "Manage", "window.setTimeout('alert(\"" + "我在页面中,但是不在updatepanel里面" + "\");',0);", true);

}

 结论:当在自定义控件中,且在updatePanel里, 后台想要弹出提示框不成功。

原文地址:https://www.cnblogs.com/Kingdizzy/p/2119811.html