更新面板内的文本框未刷新

时间:2014-11-26 22:11:56

标签: c# asp.net updatepanel

我在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面板中刷新所有控件。我不知道我在这里失踪了什么。

1 个答案:

答案 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;