ASP.NET使用参数调用onclick函数

时间:2015-12-28 00:55:03

标签: c# asp.net

在我的代码中,用户在点击以下代码时可以喜欢帖子:

<li><a href="#" runat="server" onserverclick="LikePost" class="icon fa-heart"><%# Eval("Likes") %></a></li>

这将在代码隐藏中运行LikePost函数:

    public void LikePost(object sender, EventArgs e)
    {
        //like post whit given id using a database query
    }

但我怎么能给该函数一个参数,因为它需要用户喜欢的帖子中的postid。

1 个答案:

答案 0 :(得分:1)

使用具有asp:LinkButton属性的CommandArgument,而不是HTML链接。像这样:

<asp:LinkButton
    ID="LinkButton1"
    Text='<%#Eval("Likes")%>'
    CommandArgument='<%#Eval("ID")%>'
    OnCommand="LikePost" 
    CssClass="icon fa-heart"
    runat="server"/>

然后在您的代码隐藏中,签名需要CommandEventArgs

public void LikePost(Object sender, CommandEventArgs e) 
{
    // e.CommandArgument should contain the desired value
}