Repeater嵌套循环

<asp:Repeater ID="rptList" runat="server" OnItemDataBound="Getdata">
            <HeaderTemplate>
                <table width="100%" border="0" cellspacing="0" cellpadding="0" class="ltable">
                    <thead>
                        <tr>
                            <th style="width: 80px;">
                                主表字段名
                            </th>
<th>
子集
</th> <th style="width: 100px;"> <i class="iconfont icon-setting bigger"></i>操作 </th> </tr> </thead> </HeaderTemplate> <ItemTemplate> <tr> <td> 主表字段 </td> <td> <table width="100%" border="0"> <asp:Repeater ID="data_list" runat="server"> <ItemTemplate> <tr bgcolor="#FFFFFF"> <td width="50%" align="center"> 子表对应数据1 </td> <td width="50%" align="center"> 子表对应数据2 </td> </tr> </ItemTemplate> </asp:Repeater> </table> </td> <td> <a href="#">修改</a> <a href="#">查看</a> </td> </tr> </ItemTemplate> <FooterTemplate> <%#rptList.Items.Count == 0 ? "<tr><td align=\"center\" colspan=\"3\"><font color=\"#F89406\">暂无记录</font></td></tr>" : ""%> </table> </FooterTemplate> </asp:Repeater>

前台代码:

          //主表数据绑定
        private void RptBind(string _strWhere, string _orderby)
        {this.rptList.DataSource =dt;
            this.rptList.DataBind();
        }

        //副表数据绑定
        protected void Getdata(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                string ID = ((DataRowView)e.Item.DataItem).Row["ID"].ToString();//获得对应ID
                Repeater repeater= (Repeater)e.Item.FindControl("data_list");//找到要绑定数据的Repeater
                //Literal Lit = ((Literal)e.Item.FindControl("Lit_cn"));
                if (repeater!= null)
                {
                    repeater.DataSource = dt;
                    repeater.DataBind();
                }
            }
        }

后台代码

很久以前的东西了,新同事要用到,就拿出来整理下

posted @ 2020-05-14 16:02  立扬  阅读(333)  评论(2编辑  收藏  举报
……