更改 UpdatePanel 中的文本
Change text in UpdatePanel
我是 ASP.NET 的新手。这是我的代码:
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button Text="Change" runat="server" ID="BtnChangeText" OnClick="BtnChangeText_OnClick"/>
<asp:Label runat="server" ID="LblTest" Text="Change me!"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
这是我的服务器代码:
protected void BtnChangeText_OnClick(object sender, EventArgs e)
{
LblTest.Text = "Hello World!";
}
为什么不起作用?我该怎么做才能完成这项工作?
提前致谢!
您已将 updateMode 属性 设置为 Conditional
因此 updatePanel 不会自动刷新(因为这是默认设置)!!
Simpel 解决方案将其设置回 Always
MSDN 更新模式
总是
UpdatePanel 控件的内容会针对源自该页面的所有回发进行更新。这包括异步回发。
条件
UpdatePanel 控件的内容在以下条件下更新:
如果显式调用了UpdatePanel控件的Update方法。
如果使用 UpdatePanel 控件的触发器 属性 将控件定义为触发器并导致回发。在这种情况下,控件是更新面板内容的显式触发器。触发器控件可以在定义触发器的 UpdatePanel 控件内部或外部。
如果 ChildrenAsTriggers 属性 设置为 true 并且 UpdatePanel 控件的子控件导致回发。在这种情况下,UpdatePanel 控件的子控件是更新面板的隐式触发器。嵌套的 UpdatePanel 控件的子控件不会导致更新外部 UpdatePanel 控件,除非它们被明确定义为触发器。
有关详细信息,请参阅 MSDN!
在你的 </ContentTemplate>
之后添加这个
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Change" EventName="Click" />
</Triggers>
我是 ASP.NET 的新手。这是我的代码:
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button Text="Change" runat="server" ID="BtnChangeText" OnClick="BtnChangeText_OnClick"/>
<asp:Label runat="server" ID="LblTest" Text="Change me!"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
这是我的服务器代码:
protected void BtnChangeText_OnClick(object sender, EventArgs e)
{
LblTest.Text = "Hello World!";
}
为什么不起作用?我该怎么做才能完成这项工作?
提前致谢!
您已将 updateMode 属性 设置为 Conditional
因此 updatePanel 不会自动刷新(因为这是默认设置)!!
Simpel 解决方案将其设置回 Always
MSDN 更新模式
总是
UpdatePanel 控件的内容会针对源自该页面的所有回发进行更新。这包括异步回发。
条件
UpdatePanel 控件的内容在以下条件下更新:
如果显式调用了UpdatePanel控件的Update方法。
如果使用 UpdatePanel 控件的触发器 属性 将控件定义为触发器并导致回发。在这种情况下,控件是更新面板内容的显式触发器。触发器控件可以在定义触发器的 UpdatePanel 控件内部或外部。
如果 ChildrenAsTriggers 属性 设置为 true 并且 UpdatePanel 控件的子控件导致回发。在这种情况下,UpdatePanel 控件的子控件是更新面板的隐式触发器。嵌套的 UpdatePanel 控件的子控件不会导致更新外部 UpdatePanel 控件,除非它们被明确定义为触发器。
有关详细信息,请参阅 MSDN!
在你的 </ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Change" EventName="Click" />
</Triggers>