文本框值不保存
问题描述:
由于某些原因,我放入文本框的任何内容都无法保存。有人能告诉我为什么会发生这种情况吗?下面是简化的代码我使用:文本框值不保存
的.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);
}
的回复于总是出来是 “测试1” 不管我放进去。 感谢您的帮助!
答
在设置之前,您需要检查您的Page_Load事件中的后期回放。否则,Page_Load将始终覆盖您在文本框中输入的内容。
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
TextBox1.Text = "Test 1";
}
}
只是一个小注释:不要在你的事件处理程序使用的Response.Write() - 在页面还没有开始渲染,文本将最有可能在错误的地方结束。而是使用Label或Literal控件。 – 2009-06-08 01:14:22