因此,本质上,我正在为正在做的网站做“手推车”,这是一个额外的项目。在购物车中的每个物品中,我都试图按下一个按钮以从购物车中移除该物品。问题是,不可能从后面的代码中创建一个asp:button。我读过的所有东西都说要制作一个占位符或面板,然后在其中放置一个按钮,但是由于我不知道用户购物车中有多少个物品,因此我不能在aspx文件中只放入X个占位符。
我的aspx代码(到目前为止):
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<div id="emptyCart" style="text-align: center;" runat="server">
<h1>Your cart is empty!</h1>
</div>
<div id="cart" runat="server">
</div>
</asp:Content>
我为使这些商品显示在购物车中的背景写作(这只是一项):
if (cart.InnerHtml == "")
{
cart.InnerHtml = "<div class='jumbotron'>";
}
else
{
cart.InnerHtml += "<div class='jumbotron'>";
}
cart.InnerHtml += "<div style='display:block;'>";
cart.InnerHtml += "<h3 style='display:inline-block'>Featured</h3>";
cart.InnerHtml += "<h4 style = 'display:inline-block; float:right;' > Special title treatment</h4>";
cart.InnerHtml += "</div>";
cart.InnerHtml += "<div>";
cart.InnerHtml += "<h6>With supporting text below as a natural lead-in to additional content.</h6>";
cart.InnerHtml += "<asp:Button id='remove' Text='Remove' runat='server' OnClick='Remove_Click' class='btn btn-primary btn-lg'></asp:Button>";
cart.InnerHtml += "</div>";
cart.InnerHtml += "</div>";
当我不知道我需要多少时,如何从后面的代码中制作asp:button或等效功能?
您可以从后面的代码中创建任何内容。如果查看您的ondatabound事件,例如:
//placeHolderLink is the ID of the placeholder control, create instance
PlaceHolder ph = ((PlaceHolder)e.Row.FindControl("placeholderLink"));
// create a link button and add what ever attributes you need
LinkButton link = new LinkButton();
link.Text = "x"; //delete
// add link button control to place holder
ph.Controls.Add(link);