[ajax] 动态加载包含UpdatePanel控件,出现的疑惑

simpsons 2010-04-30 07:45:55
项目包含两个简单的文件,一个是aspx页面,一个是ascx控件。

aspx上有一个updatepanel,内部有一个按钮,点击后用于加载ascx控件到updatepanel内。

ascx内也有一个updatepanel有一个按钮。



Default.aspx,包含一个外部的UpdatePanel,代码如下:

<script runat="server">

protected void Button1_Click(object sender, EventArgs e)

{

Control ctl = Page.LoadControl("TestUserControl.ascx");

pnl1.Controls.Add(ctl);

}

</script>

...

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">

<ContentTemplate>

外部最后刷新:<%=DateTime.Now.ToString() %>

<!--按钮:点击后动态添加一个ascx控件-->

<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />



<asp:PlaceHolder ID="pnl1" runat="server"/>

</ContentTemplate>

</asp:UpdatePanel>

...

TestUserControl.ascx,被动态加载,包含一个UpdatePanel,代码如下:

<asp:UpdatePanel ID="UpdatePanel2" runat="server">

<ContentTemplate>

内部最后刷新:<%=DateTime.Now.ToString() %>

<asp:Button ID="Button2" runat="server" Text="Button" />

</ContentTemplate>

</asp:UpdatePanel>



问题两个:

1. 加载完成后,ascx内部的按钮,第一次点击,页面无任何反应。为什么?

2. 第二次点击后,ascx控件内容就消失了。为什么?



注意,在问题1.中,我用fiddler捕获浏览器通信,发现服务端有回来内容。但是内容是空的。
...全文
63 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
yufenghua 2010-04-30
  • 打赏
  • 举报
回复
Ajax不怎么会 只能帮顶

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧