У меня есть сайт, на котором хранятся данные в сеансе, а на третьей странице отображаются записи, введенные на 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" />
<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 из-за политики компании, так что его основные сведения были даны, извините.
бы отключив 'BackButton' будет достаточно? – 3dd
'back button, но когда он щелкнут, я не знаю, как повторно отобразить введенную запись как потерянную.' Что потеряно и где оно должно отображаться? Вы имеете в виду, что 'txtData1' в стр. 1 не показывает значение, введенное до того, как была нажата кнопка «Назад»? – Disappointed
просто сохраните 'Session [" pg2 "] = txtData2.Text;' на вашем втором обработчике кнопки страницы и затем повторно заселите страницу 2, если у вас что-нибудь в сеансе для 'pg2' нет? – user3012759