我的项目类别的数据表如下所示。
正如您所看到的,每个类别都有自己的ID和名称及其父级ID。主Cats的父ID是0。
我尝试了很多方法在我的页面上呈现它们但没有运气!
<ul class="list-group">
<%
DataSet Cats = new DataSet();
DataSetTableAdapters.tblCategoryTableAdapter tblAdeptTblCategory = new DataSetTableAdapters.tblCategoryTableAdapter();
tblAdeptTblCategory.FillBycParent(Cats.tblCategory, 0);
for (int i = 0; i < Cats.tblCategory.Rows.Count; i++)
{
long ParentCatID = long.Parse(Cats.tblCategory.Rows[i]["cid"].ToString());
Response.Write("<li class=\"list-group-item MainCat\">" + Cats.tblCategory.Rows[i]["cName"] + "<input type=\"button\" value =\"add\" class=\"btn pull-left btn-default btn-sm\" onclick=\"addpCats('AddCat', '" + Cats.tblCategory.Rows[i]["cid"] + "')\" />");
DataSet SubCats = new DataSet();
DataSetTableAdapters.tblCategoryTableAdapter tblAdptSubCatslist = new DataSetTableAdapters.tblCategoryTableAdapter();
tblAdptSubCatslist.FillBycParent(SubCats.tblCategory, ParentCatID);
Response.Write("<ul id=\"SubCat\" class=\"list-group SubCat\">");
for (int j = 0; j < SubCats.tblCategory.Rows.Count; j++)
{
Response.Write("<li class=\"list-group-item\">" + SubCats.tblCategory.Rows[j]["cName"] + "<input type=\"button\" value =\"اعمال\" class=\"btn pull-left btn-default btn-sm\" onclick=\"addpCats('AddCat', '" + SubCats.tblCategory.Rows[j]["cid"] + "')\" /></li>");
}
Response.Write("</ul>");
Response.Write("</li>");
}
%>
</ul>
正如您所看到的,如果我们事先知道水平深度,它只有2级或更多级别,对于更多级别,它需要太多编码。
答案 0 :(得分:0)
您可以使用.net菜单控件进行更多示例,请参阅以下链接 http://www.codeproject.com/Tips/526004/Database-Driven-Dynamic-Menu-Control