protected void Page_Load(object sender, EventArgs e)
{
inintbind();
}
/// <summary>
/// 初始化所有数据
/// </summary>
public void inintbind()
{
string connstr = "Server=127.0.0.1;Port=2003;User Id=SYSDBA;Password=123456;Database=OSRDB;Encoding=GBK;";
OscarConnection conn = new OscarConnection(connstr);
conn.Open();
string sql = "select * from FUNDSOURCE order by id desc ";
OscarCommand cmd = new OscarCommand(sql,conn);
OscarDataAdapter da = new OscarDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds,"tab");
createmenu(ds, "0", mainnav);
}
/// <summary>
/// 递归树形菜单
/// </summary>
/// <param name="ds">数据源</param>
/// <param name="parentId">父节点id</param>
/// <param name="UL">前台UL标记id</param>
private void createmenu(DataSet ds, string parentId, HtmlGenericControl UL)
{
DataRow[] rows;
//判断id是否为空
if (string.IsNullOrEmpty(parentId))
{
rows = ds.Tables[0].Select("pid is null");//为空说明没有数据
}
else
{
rows = ds.Tables[0].Select("pid='" + parentId + "'");//找到匹配的数据
}
foreach (DataRow t in rows)
{
HtmlGenericControl serverUL = new HtmlGenericControl("ul");//创建ul标签
HtmlGenericControl serverLi = new HtmlGenericControl("li");//生成Li标签,作为父节点
if (t["pid"].ToString() == "0")
{
serverLi.InnerHtml = "<a href='#######' οnclick='liclick(this)'>" + t["INVENAME"].ToString() + "</a>";
//serverUL.Attributes.Add("style", "display:none");
}
else
{
serverLi.InnerHtml = "<a href='#######' οnclick='liclick(this)'>" + t["INVENAME"].ToString() + "</a>";
//serverUL.Attributes.Add("style", "display:none");
}
serverLi.Controls.Add(serverUL);
UL.Controls.Add(serverLi);
createmenu(ds, t["id"].ToString(), serverUL);
}
}
View Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="js/jquery-1.5.min.js" type="text/javascript"></script>
<script type="text/javascript">
function liclick(obj) {
$(obj).parent().find("ul").toggle();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<ul id="mainnav" runat="server"></ul>
</div>
</form>
</body>
</html>