asp.net Datalist按钮事件

时间:2013-08-05 13:00:47

标签: c# asp.net

我想要一个Datalist中的按钮点击事件但是我无法理解 这是我的代码

                    

                    <asp:DataList ID="OwnArticle" runat="server" OnItemDataBound="OwnArticle_ItemDataBound">
                        <ItemTemplate>
                            <table width="100%" cellpadding="3px" cellspacing="0">
                                <tr>
                                    <td width="20%">
                                        <asp:Image ID="img" runat="server" Height="50px" Width="45px" ImageUrl='<%#"~/UsingID.ashx?id="+ Eval("ID")%>' />
                                    </td>
                                    <td width="80%">
                                        <table width="100%" cellpadding="0" cellspacing="0">
                                            <tr>
                                                <td width="100%">
                                                    <asp:HyperLink ID="hlink" runat="server">
                                                    </asp:HyperLink>
                                                </td>
                                            </tr>
                                            <tr>
                                                <td>
                                                    <asp:DataList ID="innerRepeater" runat="server">
                                                        <ItemTemplate>
                                                            <asp:Label ID="lbldesc" runat="server" Text='<%# Eval("Key").ToString()%>'></asp:Label>
                                                        </ItemTemplate>
                                                    </asp:DataList>
                                                </td>
                                            </tr>
                                        </table>
                                    </td>
                                </tr>
                            </table>
                        </ItemTemplate>
                    </asp:DataList>
                    <table cellpadding="0" cellspacing="0" width="100%">
                        <tr>
                            <td width="10%">

                            </td>
                            <td colspan="5" width="90%">
                                <asp:Label ID="lblArticleName" CssClass="lblCaptionGrey" runat="server" Text='<%# Eval("Article_Name").ToString()%>'></asp:Label>
                            </td>
                        </tr>
                        <tr>
                            <td width="10%">

                            </td>
                            <td colspan="5" width="90%">
                                <asp:Label ID="Label2" CssClass="lblPara" runat="server" Text='<%# Eval("Article_Desc").ToString()%>'></asp:Label>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <asp:Button ID="btnLike" CommandName="isLike" runat="server"
                                    Text="Like" />
                            </td>
                        </tr>
                    </table>
                </ItemTemplate>
            </asp:DataList>

和代码隐藏是

protected void ArticleRep_ItemCommand(object source, DataListCommandEventArgs e)
        {
            if (e.CommandName == "isLike")
            {
                Response.Write(@"<script language="'javascript'">alert('success.');</script>");
            }
            else
                Response.Write(@"<script language="'javascript'">alert('Error.');</script>");
        }

如何获取datalist中按钮的按钮点击事件?

结帐以上代码!! ??

1 个答案:

答案 0 :(得分:1)

您的数据名称为OwnArticle,而您正在ArticleRep_ItemCommand下撰写Itembound事件。

这是实际问题。您应该在OwnArticle_ItemCommand事件

下撰写

所以写函数如下:

protected void OwnArticle_ItemCommand(object source, DataListCommandEventArgs e)
        {
            if (e.CommandName == "isLike")
            {
                Response.Write(@"<script language="'javascript'">alert('success.');</script>");
            }
            else
                Response.Write(@"<script language="'javascript'">alert('Error.');</script>");
        }

ArticleRep可能是您不同的数据主义者。