出于某种原因,我放入文本框的任何内容都无法保存。有人可以告诉我为什么会这样吗?这是我正在使用的简化代码:
的.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”。 谢谢你的帮助!
答案 0 :(得分:17)
在设置之前,您需要在Page_Load事件中检查回发。否则,Page_Load将始终覆盖您在文本框中输入的内容。
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
TextBox1.Text = "Test 1";
}
}