从asp:textbox获取文本

我在C#中编写ASP.NET项目。

UpdateUserInfo.aspx页面包含文本框和按钮。 在pageLoad()方法中,我将一些文本设置到文本框中,当按钮被cicked时,我得到textbox的新值并将其写入DB。

问题是即使我更改了textbox textbox的值.Text()方法返回textbox的旧值(“sometext”)并将其写入DB。

这里的方法:

protected void Page_Load(object sender, EventArgs e) { textbox.text = "sometext"; } void Btn_Click(Object sender,EventArgs e) { String textbox_text = textbox.text();// this is still equals "somevalue", even I change the textbox value writeToDB(textbox_text); } 

那么,如何使文本框最初以某些值出现,但是当用户更改此值时,getText方法返回新更改的值并将其写入DB?

 protected void Page_Load(object sender, EventArgs e) { if(!Page.IsPostBack) { textbox.text = "sometext"; } } 

回发是在按钮单击时将文本框文本属性设置回"somevalue" ,您将只想如上所述设置值一次。

回发说明:

在ASP Web开发的上下文中,回发是HTTP POST的另一个名称。 在交互式网页中,表单的内容被发送到服务器以处理某些信息。 然后,服务器将新页面发送回浏览器。

这样做是为了validation用于登录的密码,处理在线订单表格或客户端计算机不能独立完成的其他此类任务。 这不应与浏览器上的按钮所采取的刷新或后退操作相混淆。

资源

阅读View State也有助于理解它们如何组合在一起。

试试这个:

 If (!IsPostBack) { textbox.text = "sometext"; } 

请在页面加载事件中检查Page PostBack ….

实际上在页面加载textbox重新启动

  protected void Page_Load(object sender, EventArgs e) { if(!Page.IsPostBack) { textbox.text = "sometext"; } } void Btn_Click(Object sender,EventArgs e) { String textbox_text = textbox.text; writeToDB(textbox_text); }