在asp.net c#中如何在单击提交按钮

时间:2017-06-21 15:39:48

标签: c# asp.net

在我的aspx页面中,我有一个面板(通用面板)。这个是由几个动态构建的面板填充的。每个内部面板包含一个标签(id = "lbl"+ i.ToString()),一张照片(id = "img"+ i.ToString())和一个按钮提交("btn" + i.ToString())动态创建并填充sql数据。单击提交按钮时,我想在通用面板旁边的更新面板中的标签中显示名称。我怎样才能做到这一点?有人有解决方案吗?非常感谢你的帮助 我的aspx文件

    <asp:Panel ID="Panel_Generic" runat="server" Style="margin-left:30px;margin-right:30px;">
 <div class="row">
                <div class="col-lg-12">
                    <h2 class="page-header">
                        Vente à emporter
                        <small>Restaurant</small>
                    </h2>

                    <ol class="breadcrumb">
                        <li>
                            <i class="fa fa-dashboard"></i>Vos Informations
                        </li>
                        <li>
                            <i class="fa fa-file"></i> Votre commande
                        </li>
                        <li class="active">
                            <i class="fa fa-file"></i> Valider
                        </li>
                    </ol>
                </div>
            </div>

            <div style="display:flex;justify-content:space-around;margin-bottom:30px">
                <asp:Button ID="btn_Entree" width="150px" class="btn btn-info btn-lg" runat="server" Text="Entrées" />
                <asp:Button ID="btn_Plat" width="150px" class="btn btn-warning btn-lg" runat="server" Text="Plats" />
                <asp:Button ID="btn_dessert" width="150px" class="btn btn-success btn-lg" runat="server" Text="Desserts" />
                <asp:Button ID="btn_boisson" width="150px" class="btn btn-primary btn-lg" runat="server" Text="Boissons" />
            </div>
            <asp:TextBox ID="TextBox1"  runat="server"></asp:TextBox>   
            <div>
                <asp:Panel ID="Panel_Entree" class="col-md-9" runat="server" style="display:flex;flex-wrap:wrap">
                </asp:Panel>
                <asp:UpdatePanel ID="UpdatePanel1" class="col-md-3" runat="server">
                    <ContentTemplate>
                        <div class="panel panel-danger">
                            <div class="panel-heading">A emporter</div>
                            <div class="panel-body">
                                <asp:Button ID="Button1"  class="btn btn-danger btn-lg" runat="server" Text="Valider votre commande" style="justify-content:center"/>
                                <div style="border-bottom:1px solid black;margin-top:20px"></div>
                                <div>
                                    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>   
                                </div>
                            </div>
                        </div>
                    </ContentTemplate>
                </asp:UpdatePanel>
            </div>
        </asp:Panel>

我的代码

    <asp:Panel ID="Panel_Generic" runat="server" Style="margin-left:30px;margin-right:30px;">
 <div class="row">
                <div class="col-lg-12">
                    <h2 class="page-header">
                        Vente à emporter
                        <small>Restaurant</small>
                    </h2>

                    <ol class="breadcrumb">
                        <li>
                            <i class="fa fa-dashboard"></i>Vos Informations
                        </li>
                        <li>
                            <i class="fa fa-file"></i> Votre commande
                        </li>
                        <li class="active">
                            <i class="fa fa-file"></i> Valider
                        </li>
                    </ol>
                </div>
            </div>

            <div style="display:flex;justify-content:space-around;margin-bottom:30px">
                <asp:Button ID="btn_Entree" width="150px" class="btn btn-info btn-lg" runat="server" Text="Entrées" />
                <asp:Button ID="btn_Plat" width="150px" class="btn btn-warning btn-lg" runat="server" Text="Plats" />
                <asp:Button ID="btn_dessert" width="150px" class="btn btn-success btn-lg" runat="server" Text="Desserts" />
                <asp:Button ID="btn_boisson" width="150px" class="btn btn-primary btn-lg" runat="server" Text="Boissons" />
            </div>
            <asp:TextBox ID="TextBox1"  runat="server"></asp:TextBox>   
            <div>
                <asp:Panel ID="Panel_Entree" class="col-md-9" runat="server" style="display:flex;flex-wrap:wrap">
                </asp:Panel>
                <asp:UpdatePanel ID="UpdatePanel1" class="col-md-3" runat="server">
                    <ContentTemplate>
                        <div class="panel panel-danger">
                            <div class="panel-heading">A emporter</div>
                            <div class="panel-body">
                                <asp:Button ID="Button1"  class="btn btn-danger btn-lg" runat="server" Text="Valider votre commande" style="justify-content:center"/>
                                <div style="border-bottom:1px solid black;margin-top:20px"></div>
                                <div>
                                    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>   
                                </div>
                            </div>
                        </div>
                    </ContentTemplate>
                </asp:UpdatePanel>
            </div>
        </asp:Panel>

2 个答案:

答案 0 :(得分:0)

应该是

    for (int i=1; i<=5; i++)
 {
   Label myLabel = new Label();

   // Set the label's Text and ID properties.
   myLabel.Text = "Label" + i.ToString();
   myLabel.ID = "Label" + i.ToString();
   PlaceHolder1.Controls.Add(myLabel);
   // Add a spacer in the form of an HTML <br /> element.
   PlaceHolder1.Controls.Add(new LiteralControl("<br />"));
 } 

它使用ids label1,label2&amp;创建动态标签。等等

如果你想创建动态按钮并点击这样

 Button btn = new Button();
btn.ID = "btnSubmit";
btn.Text = "Submit";
btn.Click += new EventHandler(btnSubmit_Click);
this.Controls.Add(btn);

您需要事件处理程序btnSubmit_Click将click事件添加到按钮

希望这会有所帮助

答案 1 :(得分:0)

我可能误解了你的意图,但我认为这会做你所要求的。

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                BindEntree();
            }
            else
            {
                Label1.Text = TextBox1.Text;
            }

        }

*您必须删除标签的文字值:

 <asp:Label ID="Label1" runat="server" ></asp:Label> 

请记住有几种方法可以做到这一点,这是相当粗糙的,但它会让你知道回发如何与更新面板一起工作..