我在aspx文件中有这个。
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" >
<ContentTemplate>
<asp:Label ID="Label1" runat="server" ></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="In side update panel" onclick="Button1_Click" />
</ContentTemplate>
</asp:UpdatePanel>
在后面的代码中我有这个
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
TextBox1.Text = "Some Text";
}
protected void Button1_Click(object sender, EventArgs e)
{
UpdatePanel1.Update();
}
但是,在Button1_Click
我可以看到时间更改,但textbox1
不会刷新。我尝试了Triggers和其他各种技巧,但没有任何效果。基本上,我想在button_click的Update面板中刷新所有控件。我不知道我在这里失踪了什么。
答案 0 :(得分:2)
您不更改TextBox值。 :)
它总是“Some Text”,因为在你的Page_Load中你将它设置为该文本。尝试添加时间戳或在单击事件中尝试替换文本。
E.g。
protected void Button1_Click(object sender, EventArgs e)
{
TextBox1.Text = "Some Text 1...";
UpdatePanel1.Update();
}
如果您希望将其设为空,请在点击事件中使用此功能
TextBox1.Text = string.Empty;