文本框值不保存

时间:2009-06-08 00:35:27

标签: c# asp.net

出于某种原因,我放入文本框的任何内容都无法保存。有人可以告诉我为什么会这样吗?这是我正在使用的简化代码:

的.aspx

<body>
    <form id="form1" runat="server">
    <div>
    Try this:
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
    </div>
    </form>
</body>

.aspx.cs

protected void Page_Load(object sender, EventArgs e)
{
    TextBox1.Text = "Test 1";
}

protected void Button1_Click(object sender, EventArgs e)
{
     Response.Write(TextBox1.Text);
}

无论我放入什么,Response.Write总是出现“Test 1”。 谢谢你的帮助!

1 个答案:

答案 0 :(得分:17)

在设置之前,您需要在Page_Load事件中检查回发。否则,Page_Load将始终覆盖您在文本框中输入的内容。

protected void Page_Load(object sender, EventArgs e)
{
   if(!IsPostBack)
   {
    TextBox1.Text = "Test 1";
   }
}