在我的代码中,当用户单击以下代码时,会喜欢一个帖子:

<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。

最佳答案

代替HTML链接,使用具有asp:LinkButton属性的CommandArgument。像这样:

<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
}

关于c# - ASP.NET使用参数调用onclick函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34486493/

10-11 13:35