![](/img/trans.png)
[英]How to add class in parent li using child link button from code behind in asp.net c#?
[英]Pass variable value from aspx link button to code behind in ASP. NET using C#
在 for 循環中,如何將變量從 asp 標記傳遞到代碼隱藏並訪問變量值
CommandArgument
有效,但顯示<# gigs[x].Id%>
- 不是值。
象素
<%for (int x = 0; x < gigs.Count; x++){%>
<asp:LinkButton ID="LinkButton2" CssClass="btn btn-danger mt-3" runat="server"
UseSubmitBehavior="false" CommandArgument="<# gigs[x].Id%>"
OnClick="LinkButton2_Click">Hide Gig <i class="fa fa-eye-slash ml-1"></i>
</asp:LinkButton>
背后的代碼
protected void LinkButton2_Click(object sender, EventArgs e)
{
LinkButton lnk = sender as LinkButton;
String Value1 = lnk.CommandArgument;
Response.Write(Value1);
}
結果
<# gigs[x].Id%>
預期結果
1
嘗試改用<%# gigs[x].Id %>
並在Page_Load
事件上調用Page.DataBind()
。
<%= %> 是一個縮短的 response.Write() 並且對於任何服務器標記都不能作為屬性有效。
<%# %> 可以使用,只有當容器是數據綁定的(你的情況下的頁面)。
你最好使用強類型中繼器。 您可以將ItemType
設置為您的 class gigs
,並可以完全訪問它的所有屬性。 然后您可以輕松地在 LinkButton 中使用它們。
Repeater1.DataSource = gigs;
Repeater1.DataBind();
然后在aspx中
<asp:Repeater ID="Repeater1" runat="server" ItemType="MyNameSpace.MyClass.Gig">
<ItemTemplate>
<asp:LinkButton ID="LinkButton2" CommandArgument='<%# Item.Id %>' OnClick="LinkButton2_Click" runat="server">Hide Gig</asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.