asp无限级分类

2024-11-06 09:39:15
推荐回答(6个)
回答(1):

1.首先建立个节点表,最起码包含字段:ID、父节点ID、URL等。

2.使用TREEVIEW显示树的效果:(C#.NET)

private void CreateTree(TreeNode pNode,string filter)
{

DataSet ds1 = new DataSet();
ds1 = cTreeView.Temp_Get();//调用存储过程获得树结构表
string temp;
DataView dv = new DataView();
dv = ds1.Tables[0].DefaultView;

dv.RowFilter = "RESOURCE_PARENT='"+filter+"'";

foreach(DataRowView Row in dv)
{
TreeNode Node = new TreeNode();

if(pNode == null)
{ //添加根节点
Node.ID = Row["RESOURCE_ID"].ToString();
Node.Text = Row["RESOURCE_NAME"].ToString();
if( Row["RESOURCE_TYPE"].ToString().ToUpper()=="CUSTOM")
{
Node.ImageUrl="../images/file.png";
Node.ExpandedImageUrl="../images/file.png";
}
TreeView1.Nodes.Add(Node);
//Node.CheckBox = true;
CreateTree(Node,Row["RESOURCE_ID"].ToString()); //再次递归
}
else
{ //添加当前节点的子节点
Node.ID = Row["RESOURCE_ID"].ToString();
Node.Text = Row["RESOURCE_NAME"].ToString();
if( Row["RESOURCE_TYPE"].ToString().ToUpper()=="CUSTOM")
{
Node.ImageUrl="../images/file.png";
Node.ExpandedImageUrl="../images/file.png";
}
pNode.Nodes.Add(Node);
//Node.CheckBox = true;
CreateTree(Node,Row["RESOURCE_ID"].ToString()); //再次递归
}

temp=Row["RESOURCE_LINK"].ToString()+"?ID="+Row["RESOURCE_ID"].ToString()+"&ParentID="+Row["RESOURCE_PARENT"].ToString()+"&Type="+Row["RESOURCE_TYPE"].ToString();
Node.Target = "main";
Node.NavigateUrl = ""+temp;
}

}

3.QQ:11624317 我有完整的源代码,还有权限管理的代码(自己写的).

回答(2):

http://hi.baidu.com/jilijun/blog/item/0513834b73ac20f183025c75.html

回答(3):

用javascript实现的.

回答(4):

递归

回答(5):

超级简单

回答(6):

很简单啊...多点分就加我QQ..109598168