Jquery.TreeView结合ASP.Net和数据库生成菜单导航条


Posted in Javascript onAugust 27, 2010

下面的例子将结合项目实际运用来使用Jquery.TreeView,当然在使用控件树需要现在相应的js文件
下面就把我生成的TreeView展现给大家看看希望对大家有所帮助!在使用之前需要下载控件树的js文件和Css样式

介绍一下表结构

M_ID M_Name M_ParentID M_URL M_Sort
Jquery.TreeView结合ASP.Net和数据库生成菜单导航条
然后新建一个网站,在新建的网站下添加CSS文件夹和js文件夹分别用于存放Css样式和JS,同时再添加一个image文件夹用于存放TreeView的图片
接着我们就开始实现我们的功能了!
前台代码

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 
<!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"> 
<head runat="server"> 
<title></title> 
<link rel="stylesheet" href="CSS/screen.css" /> 
<link rel="Stylesheet" href="CSS/jquery.treeview.css" /> 
<script src="js/jquery-1.4.2.js" type="text/javascript"></script> 
<script src="js/jquery.treeview.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function() { 
$("#tree").treeview(); 
}) 
</script> 
</head> 
<body> 
<div id="main"> 
<a>Main Demo</a> 
<div id="sidetree"> 
<ul id="tree" runat="server"> 
</ul> 
</div> 
</div> 
</body> 
</html>

后台代码:
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Data; 
using System.Data.SqlClient; 
using System.Web.UI.HtmlControls; 
public partial class _Default : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 
if (!IsPostBack) 
{ 
DataSet ds = getDate(); 
createmenu(ds, null, tree); 
} 
} 
public DataSet getDate() 
{ 
DataSet ds = new DataSet(); 
string config = System.Configuration.ConfigurationManager.ConnectionStrings["LiveOffice"].ToString(); 
SqlConnection conn = new SqlConnection(config); 
SqlDataAdapter da = new SqlDataAdapter("select * from SystemMenu order by M_Sort", conn); 
da.Fill(ds); 
return ds; 
} 
private void createmenu(DataSet ds, string parentId, HtmlGenericControl UL) 
{ 
DataRow[] rows; 
if (string.IsNullOrEmpty(parentId)) 
rows = ds.Tables[0].Select("M_ParentID is null");//过滤 
else 
rows = ds.Tables[0].Select("M_ParentID='" + parentId + "'");//过滤 
foreach (DataRow t in rows) 
{ 
DataRow[] childern = ds.Tables[0].Select("M_ParentID =" + t["M_ID"].ToString());//用于判断是否有子节点 
HtmlGenericControl serverLi = new HtmlGenericControl("li");//生成Li标签,作为父节点 
if (childern.Length != 0 || parentId == "")//是父节点 
{ 
serverLi.InnerText = t["M_name"].ToString(); 
HtmlGenericControl serverUL = new HtmlGenericControl("ul"); 
serverLi.Controls.Add(serverUL); 
UL.Controls.Add(serverLi); 
createmenu(ds, t["M_ID"].ToString(), serverUL); 
} 
else 
{ 
//生成标签a 
HtmlAnchor NewAnchorControl = new HtmlAnchor(); 
// 设置标签a的属性 
NewAnchorControl.Name = "NewAnchorControl"; 
NewAnchorControl.InnerHtml = t["M_Name"].ToString(); 
NewAnchorControl.HRef = t["M_URL"].ToString(); 
NewAnchorControl.Target = "_black";//设置显示的位置,这里改一下 
serverLi.Controls.Add(NewAnchorControl); 
UL.Controls.Add(serverLi); 
createmenu(ds, t["M_ID"].ToString(), UL); 
} 
} 
} 
}
Javascript 相关文章推荐
用 JavaScript 迁移目录
Dec 18 Javascript
JavaScript Cookie的读取和写入函数
Dec 08 Javascript
JavaScript实现的日期控件具体代码
Nov 18 Javascript
js控制input输入字符解析
Dec 27 Javascript
Jquery操作radio的简单实例
Jan 06 Javascript
JavaScript DOM操作表格及样式
Apr 13 Javascript
浅析JavaScript 调试方法和技巧
Oct 22 Javascript
JS调用打印机功能简单示例
Nov 28 Javascript
Vue.JS实现垂直方向展开、收缩不定高度模块的JS组件
Jun 19 Javascript
一些可能会用到的Node.js面试题
Jun 15 Javascript
layui--js控制switch的切换方法
Sep 03 Javascript
element实现合并单元格通用方法
Nov 13 Javascript
jquery 插件开发备注
Aug 27 #Javascript
Jquery + Ajax调用webService实例代码(asp.net)
Aug 27 #Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
Aug 26 #Javascript
ExtJs GridPanel简单的增删改实现代码
Aug 26 #Javascript
javascript oop开发滑动(slide)菜单控件
Aug 25 #Javascript
JavaScript初学者需要了解10个小技巧
Aug 25 #Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
Aug 25 #Javascript
You might like
PHP页面间传递参数实例代码
2008/06/05 PHP
php存储过程调用实例代码
2013/02/03 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
2013/06/28 PHP
用jscript实现新建word文档
2007/06/15 Javascript
JavaScript 判断浏览器是否支持SVG的代码
2013/03/21 Javascript
javascript中的parseInt和parseFloat区别
2013/07/12 Javascript
JS可以控制样式的名称写法一览
2014/01/16 Javascript
$(&quot;&quot;).click与onclick的区别示例介绍
2014/09/25 Javascript
jQuery固定浮动侧边栏实现思路及代码
2014/09/28 Javascript
JavaScript数组和循环详解
2015/04/27 Javascript
用JavaScript实现PHP的urlencode与urldecode函数
2015/08/13 Javascript
JavaScript如何动态创建table表格
2020/08/02 Javascript
原生JavaScript实现瀑布流布局
2020/06/28 Javascript
js操作数据库实现注册和登陆的简单实例
2016/05/26 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
VUE2.0中Jsonp的使用方法
2018/05/22 Javascript
微信小程序制作表格的方法
2019/02/14 Javascript
python算法学习之基数排序实例
2013/12/18 Python
Python实现在线音乐播放器
2017/03/03 Python
如何在python中使用selenium的示例
2017/12/26 Python
python实现生命游戏的示例代码(Game of Life)
2018/01/24 Python
用Eclipse写python程序
2018/02/10 Python
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
python getopt模块使用实例解析
2019/12/18 Python
ECOSUSI官网:女式皮革背包
2019/09/27 全球购物
过滤器的用法
2013/10/08 面试题
营销人才自我鉴定范文
2013/12/25 职场文书
文明生主要事迹
2014/05/25 职场文书
财务助理岗位职责范本
2014/10/09 职场文书
2014年煤矿安全工作总结
2014/12/04 职场文书
工程款催款函
2015/06/24 职场文书
Pytorch distributed 多卡并行载入模型操作
2021/06/05 Python
Python3中PyQt5简单实现文件打开及保存
2021/06/10 Python
Redis高并发防止秒杀超卖实战源码解决方案
2021/11/01 Redis