ASP.NET:TextBox.Text没有更新的值

时间:2011-11-16 14:43:10

标签: asp.net vb.net textbox

我有一个初始化函数,可以将数据加载到我的文本框NameTextBox中,然后在名称中添加“s”。然后在调试NameTextBox的值时单击执行SaveButton_Click的保存按钮.Text仍然是原始字符串(FirstName)而不是(FirstNames)。为什么是这样?感谢。

编辑:对不起,如果您需要更多信息,请告诉我......

Page_Load(发件人,e)

Info = GetMyInfo()
Initialize()

初始化()

NameTextBox.Text = Info.Name

SaveButton_Click(发件人,e)

Dim command As SqlCommand

command = GetSQLCommand("StoredProcedure")
command.Parameters.AddWithValue("@Paramter", NameTextBox.Text)
ExecuteSQLCommand(command)

1 个答案:

答案 0 :(得分:12)

如果文本框被禁用,它将不会被持久化回代码隐藏,如果你每次都设置初始值(不管IsPostBack)你基本上都在写它到达事件处理程序时的值(SaveButton_Click) 。例如:

page_load() { NameTextBox.Text = "someValue";}
....

saveButton_Click() { string x = NameTextBox.Text;}

上面的代码将始终使文本框的文本值为“someValue”。您需要将其包装在if(!IsPostBack)中,如此......

page_load() { if(!IsPostBack) {NameTextBox.Text = "someValue";}}
....

saveButton_Click() { string x = NameTextBox.Text;}