zoukankan      html  css  js  c++  java
  • 多个repeater嵌套使用

    <ul>
    <asp:Repeater ID="bClass" runat="server" OnItemDataBound="bClassList">
    <ItemTemplate>
    <li>
    <div><%#Eval("x_classname") %></div>

    <asp:Repeater ID="bsClass" runat="server" OnItemDataBound="bsClassList">
    <HeaderTemplate><ul></HeaderTemplate>
    <FooterTemplate></ul></FooterTemplate>
    <ItemTemplate>
    <li>
    <div><%#Eval("x_classname") %></div>

    <asp:Repeater ID="sClass" runat="server">
    <HeaderTemplate><ul></HeaderTemplate>
    <FooterTemplate></ul></FooterTemplate>
    <ItemTemplate>
    <li>
    <div><%#Eval("x_classname") %></div>
    </li>
    </ItemTemplate>
    </asp:Repeater>

    </li>
    </ItemTemplate>
    </asp:Repeater>

    </li>
    </ItemTemplate>
    </asp:Repeater>
    </ul>

    CS:
    protected void Page_Load(object sender, EventArgs e)
    {
    if (Session["login"] == null)
    {
    Response.Redirect("login.aspx");
    Response.End();
    }

    OleDbConnection conn = dbopen.getDB();

    string bStr = "select id,x_classname,taxis,preid from Table where preid=0 order by taxis asc,id asc";
    OleDbDataAdapter rs = new OleDbDataAdapter(bStr,conn);
    conn.Open();
    DataSet rd = new DataSet();
    rs.Fill(rd);
    bClass.DataSource = rd;
    bClass.DataBind();
    conn.Close();
    }

    protected void bClassList(object sender, RepeaterItemEventArgs e)
    {
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
    string preid = ((DataRowView)e.Item.DataItem).Row["id"].ToString();//获得对应ID
    Repeater bsClass = (Repeater)e.Item.FindControl("bsClass");//找到要绑定数据的Repeater
    if (bsClass != null)
    {
    OleDbConnection sc = dbopen.getDB();
    string ssql = "select id,x_classname,taxis,preid from Table where preid="+preid+" order by taxis asc,id asc";

    OleDbDataAdapter srs = new OleDbDataAdapter(ssql,sc);
    sc.Open();
    DataSet srd = new DataSet();
    srs.Fill(srd);

    bsClass.DataSource = srd;
    bsClass.DataBind();
    sc.Close();
    }
    }
    }
    protected void bsClassList(object sender,RepeaterItemEventArgs e)
    {
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {

    string preid = ((DataRowView)e.Item.DataItem).Row["id"].ToString();//获得对应ID

    Repeater sClass = (Repeater)e.Item.FindControl("sClass");//找到要绑定数据的Repeater
    if (sClass != null)
    {
    OleDbConnection sc = dbopen.getDB();
    string ssql = "select id,x_classname,taxis,preid from Table where preid=" + preid + " order by taxis asc,id asc";

    OleDbDataAdapter srs = new OleDbDataAdapter(ssql, sc);
    sc.Open();
    DataSet srd = new DataSet();
    srs.Fill(srd);

    sClass.DataSource = srd;
    sClass.DataBind();
    sc.Close();
    }

    }
    }

     

  • 相关阅读:
    把VB.NET代码转换为C#代码的方法
    离散数学 第二章 谓词逻辑 26 前束范式
    离散数学 第二章 谓词逻辑 27 谓词演算的推理理论
    asp.net中怎样用Javascript控制RequiredFieldValidator控件什么时候启用,什么时候不启用验证?
    离散数学中的IFF标记
    BIRT Overview
    离散数学 第二章 谓词逻辑 25 谓词演算的等价式和蕴涵式
    getRemoteAddr()和getRemoteHost()的区别
    scp 不用密码
    利用spring实现javamail功能
  • 原文地址:https://www.cnblogs.com/hcf-0320/p/4218647.html
Copyright © 2011-2022 走看看