从上一页检索数据

时间:2015-07-28 08:45:06

标签: c# html

我有一个在会话中存储数据的网站,在第3页上显示在pg1&上输入的条目。 PG2。

但是在pg2上,有一个后退按钮,但是当它被点击时,我不知道如何重新显示输入的输入作为丢失。

我是新手使用会话存储,所以我可能会做一些完全错误的事情所以请告诉我是否是。

无论如何我的代码是:

Pg1 HTML

<form id="form1" runat="server">
<div>
    <p>pg1</p>
    <asp:TextBox ID="txtData1" runat="server"></asp:TextBox>
    <br />
    <br />
    <asp:Button ID="pg1button" runat="server" Text="Submit" OnClick="pg1button_Click" />
</div>
</form>

Pg1代码

protected void pg1button_Click(object sender, EventArgs e)
{
    Session["pg1"] = txtData1.Text;
    Response.Redirect("/Session/pg2.aspx");
}

Pg2 HTML

<form id="form1" runat="server">
<div>
<p>pg2</p>
    <asp:TextBox ID="txtData2" runat="server"></asp:TextBox>
    <br />
    <br />
    <asp:Button ID="pg2button" runat="server" Text="Submit" OnClick="pg2button_Click" />&nbsp;
    <asp:Button ID="pg2Backbutton" runat="server" OnClick="pg2Backbutton_Click" Text="Back" />
</div>
</form>

Pg2代码

protected void pg2button_Click(object sender, EventArgs e)
{
    Session["pg2"] = txtData2.Text;
    Response.Redirect("/Session/pg3.aspx");
}

protected void pg2Backbutton_Click(object sender, EventArgs e)
{
    Response.Redirect("/Session/pg1.aspx");
}

Pg3 HTML

<form id="form1" runat="server">
<div>
    <h1>Session State</h1>
<p>Pg 1 data is: <%=Session["pg1"] %></p>
<p>Pg 2 data is: <%=Session["pg2"] %></p>
</div>
</form>

除了我的后退按钮,一切都正常。使用会话的原因是该网站不使用数据库,因为第三页将会有一个按钮,该按钮会将详细信息通过电子邮件发送到指定的电子邮件地址。

由于公司政策,我不得不删除HTML的某些部分,因此给出了基础知识,抱歉。

1 个答案:

答案 0 :(得分:1)

在pg1.cs文件中添加以下逻辑

 protected void Page_Load(object sender, EventArgs e)
 {
     if (txtData1.Text == string.Empty && Session["pg1"] != null)
      {
         txtData1.Text = Session["pg1"].ToString();
      }
  }

- SJ