ASP.为什么我不能更改网页中文本框中的文本
本文关键字:文本 中文 网页 为什么 不能 ASP | 更新日期: 2023-09-27 18:12:57
我有一个ASP。一个简单的网页。NET项目。当我加载页面时,文本框显示"Hello"。当我点击"btnUpload"时,文本就消失了。Load_Form函数中的IsPostBack只是使文本保持不变。
protected void Page_Load(object sender, EventArgs e)
{
TextBox1.Text = "Hello";
}
protected void btnUpload_Click(object sender, EventArgs e)
{
TextBox1.Text = "Good Bye";
}
这是因为您没有使用
if(!IsPostBack) { }
inside Page_load()
method
所以修改你的代码为:
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack) {
TextBox1.Text = "Hello";
}
}
protected void btnUpload_Click(object sender, EventArgs e)
{
TextBox1.Text = "Good Bye";
}
因为,你没有使用这个,这就是为什么,在回发按钮上,它将值更改为TextBox1.Text = "Good Bye";
,但它随后完成了Page_Load()
的回发,所以它再次更改为TextBox1.Text = "Hello";
,这就是Page_Load()
的默认值在渲染后显示的原因。
您必须在Page_Load
事件处理程序中使用以下条件,而不是在Load_Form
:
if (!IsPostBack) {
TextBox1.Text = "Hello";
}
你的按钮点击事件处理程序是ok的。
希望有帮助!
请看下面的代码:
default . aspx:
<asp:TextBox ID="text1" runat="server"></asp:TextBox>
<asp:Button ID="btn" runat="server" OnClick="btn_Click" />
确保aspx页面包含与上面相同的按钮代码