0

嗨,我正在尝试在回发后保存 request.form 中的值。我尝试在输入字符串上使用 viewstate,但 page_load 不断重新生成 request.form

string TID = null;
Protected void Page_Load(object sender, EventArgs e)
{
     if (TID == null)
     {  
            TID= Request.Form ["totalID"];
      }
      Label1.Text = TID;
}

protected void Button2_Click (object sender, EventArgs e)
{
     Label1.Text = TID;
}
4

2 回答 2

0

尝试向IsPostBack属性添加支票。

if (IsPostBack)
{
    //Set Values here
}

这设置为true当页面响应表单提交或可能触发的控制事件的回发时。

于 2016-11-28T12:24:06.727 回答
0

大多数 asp.net 控件都有一个 text 属性,因此如果您的控件是 aTextBox并且您将其命名为 textBoxTotalID,那么您只需使用this.textBoxTotalID.Text.

代替totalID,使用元素的名称而不是 Id。该名称用于将信息发布到服务器。并且还要确保您在视图中为您在发布时需要其值的元素指定了一个名称。

除此之外,问问自己这个问题:您是否需要在用户请求页面时或仅在提交表单时才这样做?我相信您的答案仅在提交表单时。在这种情况下,仅在IsPostBackis时才这样做true

于 2016-11-28T12:30:04.747 回答