进行会话以记住用户在文本框中插入的值 [英] Make a session to remember what value user have insert in textbox
本文介绍了进行会话以记住用户在文本框中插入的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨
当用户在文本框中插入一个数字时,我需要在会话中保存这些信息。
因为当用户选择7个水果时,面板将关闭,并且一个新的面板上有关于他所选择的水果和多少水果的信息将在中继器或标签中得到评估。
但我的会话显示为0.
这是我试过的:
< asp:Panel ID = Panel_visfrugt runat = server >
< table border = 1 >
< asp:SqlDataSource ID = SqlDataSource1 runat = < span class =code-string> server ConnectionString = <%$ ConnectionStrings:ConnectionString% > SelectCommand = SELECT * FROM [frugt] > < / asp:SqlDataSource >
< tr>
< td> Antal < / td >
< td>< asp:标签ID = Label1 runat = server Text = > < / asp:标签 > < / td >
< / tr >
< asp:Repeater ID = Repeater1 runat = server DataSourceID = SqlDataSource1 OnItemCommand = Repeater1_ItemCommand >
< ItemTemplate>
< tr>
< td><%#Eval( frugt_navn)%> < / td >
< td>< asp:TextBox ID = txtbox1 runat = server Width = 30 > < ; / asp:TextBox > < ; / td >
< / tr >
< / ItemTemplate < span class =code-keyword>>
< / asp:Repeater >
< / 表 >
< asp:按钮ID = Button1 runat = server Text = Lægikurv OnClick = Button1_Click1 />
< / asp:Panel >
< asp:Panel ID = Panel_vis runat = server >
< h4> De har nu lagt disse ting i kurven < / h4 >
< asp:Repeater ID = Repeater2 runat = server DataSourceID = SqlDataSource1 >
< ItemTemplate>
<%#Eval( frugt_navn)%>
< asp:标签ID = Label_vis runat = server Text = 标签 > < / asp:标签 >
< span class =code-keyword>< / ItemTemplate >
< / asp:Repeater >
< / asp:Panel >
< asp:按钮ID = Button2 runat = server Text = slet会话 OnClick = Button2_Click />
private int 值= 0 ;
受保护 void Page_Load( object sender,EventArgs e)
{
Panel_visfrugt.Visible = true ;
Panel_vis.Visible = false ;
}
受保护 void Button1_Click1(< span class =code-keyword> object sender,EventArgs e)
{
foreach (RepeaterItem item Repeater1.Items)
{
if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
{
TextBox Textbox_antal = item.FindControl( txtbox1) as TextBox;
if (Textbox_antal!= null )
{
Textbox_antal.Text = 0;
}
Value = Convert.ToInt32(Value + int .Parse(Textbox_antal.Text));
会话[ frugt] =价值;
if (Value!= 7 )
{
Label1.Text = Der er 7 nu;
Panel_visfrugt.Visible = false ;
Panel_vis.Visible = true ;
}
else if (Value > 7 )
{
Label1.Text = Det be kun muligt at bestille 7 stk frugt;
}
}
}
if (会话[ frugt]!= null )
{
Label_vis.Text = Convert.ToString(Session [ frugt]);
}
}
受保护 < span class =code-keyword> void Button2_Click( object sender,EventArgs e)
{
Session.Abandon() ;
Response.Redirect( Default.aspx);
}
我做错了什么?
Tina
解决方案
ConnectionStrings:ConnectionString%> SelectCommand = SELECT * FROM [frugt] > < / asp:SqlDataSource >
< tr>
< td> Antal < / td >
< td>< asp:标签ID = Label1 runat = server Text = > < / asp:标签 > < / td >
< / tr >
< asp:Repeater ID = Repeater1 runat = server DataSourceID = SqlDataSource1 OnItemCommand = Repeater1_ItemCommand >
< ItemTemplate> ;
< tr>
< td><%#Eval( frugt_navn)%> < / td >
< td>< asp:TextBox ID = txtbox1 runat = server Width = 30 > < ; / asp:TextBox > < ; / td >
< / tr >
< / ItemTemplate < span class =code-keyword>>
< / asp:Repeater >
< / 表 >
< asp:按钮ID = Button1 runat = server Text = Lægikurv OnClick = Button1_Click1 />
< / asp:Panel >
< asp:Panel ID = Panel_vis runat = server >
< h4> De har nu lagt disse ting i kurven < / h4 >
< asp:Repeater ID = Repeater2 runat = server DataSourceID = SqlDataSource1 >
< ItemTemplate>
<%#Eval( frugt_navn)%>
< asp:标签ID = Label_vis runat = server Text = 标签 > < / asp:标签 >
< span class =code-keyword>< / ItemTemplate >
< / asp:Repeater >
< / asp:Panel >
< asp:按钮ID = Button2 runat = server Text = slet会话 OnClick = Button2_Click />
private int 值= 0 ;
受保护 void Page_Load( object sender,EventArgs e)
{
Panel_visfrugt.Visible = true ;
Panel_vis.Visible = false ;
}
受保护 void Button1_Click1(< span class =code-keyword> object sender,EventArgs e)
{
foreach (RepeaterItem item Repeater1.Items)
{
if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
{
TextBox Textbox_antal = item.FindControl( txtbox1) as TextBox;
if (Textbox_antal!= null )
{
Textbox_antal.Text = 0;
}
Value = Convert.ToInt32(Value + int .Parse(Textbox_antal.Text));
会话[ frugt] =价值;
if (Value!= 7 )
{
Label1.Text = Der er 7 nu;
Panel_visfrugt.Visible = false ;
Panel_vis.Visible = true ;
}
else if (Value > 7 )
{
Label1.Text = Det be kun muligt at bestille 7 stk frugt;
}
}
}
if (会话[ frugt]!= null )
{
Label_vis.Text = Convert.ToString(Session [ frugt]);
}
}
受保护 < span class =code-keyword> void Button2_Click( object sender,EventArgs e)
{
Session.Abandon() ;
Response.Redirect( Default.aspx);
}
我做错了什么?
Tina
试试这个
会话[数字] = Conver.ToInt32(TxtNum.Text);
是Textbox_antal.Text有浮点数或小数值
Hi
When a user is insert a number in the textbox, I need to save this information in a session.
Because when the user have picked 7 fruits the panel will close and a new panel with the information off what fruit and how many fruit he have picked is going to get eval out in a repeater or label.
But my session is showing 0.
This is what I have try:
<asp:Panel ID="Panel_visfrugt" runat="server"> <table border="1"> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [frugt]"></asp:SqlDataSource> <tr> <td>Antal</td> <td><asp:Label ID="Label1" runat="server" Text=""></asp:Label></td> </tr> <asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="Repeater1_ItemCommand"> <ItemTemplate> <tr> <td><%#Eval("frugt_navn") %></td> <td><asp:TextBox ID="txtbox1" runat="server" Width="30"></asp:TextBox></td> </tr> </ItemTemplate> </asp:Repeater> </table> <asp:Button ID="Button1" runat="server" Text="Læg i kurv" OnClick="Button1_Click1" /> </asp:Panel> <asp:Panel ID="Panel_vis" runat="server" > <h4>De har nu lagt disse ting i kurven</h4> <asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSource1"> <ItemTemplate> <%#Eval("frugt_navn") %> <asp:Label ID="Label_vis" runat="server" Text="Label"></asp:Label> </ItemTemplate> </asp:Repeater> </asp:Panel> <asp:Button ID="Button2" runat="server" Text="slet session" OnClick="Button2_Click" />
private int Value = 0; protected void Page_Load(object sender, EventArgs e) { Panel_visfrugt.Visible = true; Panel_vis.Visible = false; } protected void Button1_Click1(object sender, EventArgs e) { foreach (RepeaterItem item in Repeater1.Items) { if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem) { TextBox Textbox_antal = item.FindControl("txtbox1") as TextBox; if (Textbox_antal != null) { Textbox_antal.Text = "0"; } Value = Convert.ToInt32(Value + int.Parse(Textbox_antal.Text)); Session["frugt"] = Value; if (Value != 7) { Label1.Text = "Der er 7 nu"; Panel_visfrugt.Visible = false; Panel_vis.Visible = true; } else if (Value > 7) { Label1.Text = "Det er kun muligt at bestille 7 stk frugt"; } } } if (Session["frugt"] != null) { Label_vis.Text = Convert.ToString(Session["frugt"]); } } protected void Button2_Click(object sender, EventArgs e) { Session.Abandon(); Response.Redirect("Default.aspx"); }
What is I doing wrong?
Tina解决方案ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [frugt]"></asp:SqlDataSource> <tr> <td>Antal</td> <td><asp:Label ID="Label1" runat="server" Text=""></asp:Label></td> </tr> <asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="Repeater1_ItemCommand"> <ItemTemplate> <tr> <td><%#Eval("frugt_navn") %></td> <td><asp:TextBox ID="txtbox1" runat="server" Width="30"></asp:TextBox></td> </tr> </ItemTemplate> </asp:Repeater> </table> <asp:Button ID="Button1" runat="server" Text="Læg i kurv" OnClick="Button1_Click1" /> </asp:Panel> <asp:Panel ID="Panel_vis" runat="server" > <h4>De har nu lagt disse ting i kurven</h4> <asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSource1"> <ItemTemplate> <%#Eval("frugt_navn") %> <asp:Label ID="Label_vis" runat="server" Text="Label"></asp:Label> </ItemTemplate> </asp:Repeater> </asp:Panel> <asp:Button ID="Button2" runat="server" Text="slet session" OnClick="Button2_Click" />
private int Value = 0; protected void Page_Load(object sender, EventArgs e) { Panel_visfrugt.Visible = true; Panel_vis.Visible = false; } protected void Button1_Click1(object sender, EventArgs e) { foreach (RepeaterItem item in Repeater1.Items) { if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem) { TextBox Textbox_antal = item.FindControl("txtbox1") as TextBox; if (Textbox_antal != null) { Textbox_antal.Text = "0"; } Value = Convert.ToInt32(Value + int.Parse(Textbox_antal.Text)); Session["frugt"] = Value; if (Value != 7) { Label1.Text = "Der er 7 nu"; Panel_visfrugt.Visible = false; Panel_vis.Visible = true; } else if (Value > 7) { Label1.Text = "Det er kun muligt at bestille 7 stk frugt"; } } } if (Session["frugt"] != null) { Label_vis.Text = Convert.ToString(Session["frugt"]); } } protected void Button2_Click(object sender, EventArgs e) { Session.Abandon(); Response.Redirect("Default.aspx"); }
What is I doing wrong?
Tina
Try This
Session["number"] = Conver.ToInt32(TxtNum.Text);
is Textbox_antal.Text have float or decimal value
这篇关于进行会话以记住用户在文本框中插入的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文