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 相关文章推荐
Mozilla中显示textarea中选择的文字
Sep 07 Javascript
我遇到的参数传递中 双引号单引号嵌套问题
Feb 11 Javascript
一个基于jquery的文本框记数器
Sep 19 Javascript
jquery实现textarea输入框限制字数的方法
Jan 15 Javascript
jquery+html5制作超酷的圆盘时钟表
Apr 14 Javascript
vue.js+Element实现表格里的增删改查
Jan 18 Javascript
JavaScript 判断对象中是否有某属性的常用方法
Jun 14 Javascript
使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题
May 14 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
Jun 10 Javascript
vue通过video.js解决m3u8视频播放格式的方法
Jul 30 Javascript
详解vite2.0配置学习(typescript版本)
Feb 25 Javascript
使用javascript解析二维码的三种方式
Nov 11 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
codeigniter中view通过循环显示数组数据的方法
2015/03/20 PHP
谈谈php对接芝麻信用踩的坑
2016/12/01 PHP
PHP脚本自动识别验证码查询汽车违章
2016/12/20 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
用JavaScript调用WebService的示例
2008/04/07 Javascript
JQuery-tableDnD 拖拽的基本使用介绍
2013/07/04 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
jQuery中:disabled选择器用法实例
2015/01/04 Javascript
Javascript中的方法链(Method Chaining)介绍
2015/03/15 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
javascript实现网页端解压并查看zip文件
2015/12/15 Javascript
bootstrap轮播图示例代码分享
2017/05/17 Javascript
jQuery 防止相同的事件快速重复触发方法
2018/02/08 jQuery
详解如何使用webpack打包多页jquery项目
2019/02/01 jQuery
vue写h5页面的方法总结
2019/02/12 Javascript
全面了解JavaScript的作用域链
2019/04/03 Javascript
Angular利用HTTP POST下载流文件的步骤记录
2020/07/26 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
Python实现字符串匹配算法代码示例
2017/12/05 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
python中的常量和变量代码详解
2018/07/25 Python
pandas修改DataFrame列名的实现方法
2019/02/22 Python
Python爬取视频(其实是一篇福利)过程解析
2019/08/01 Python
Python使用py2neo操作图数据库neo4j的方法详解
2020/01/13 Python
Python list和str互转的实现示例
2020/11/16 Python
python中xlutils库用法浅析
2020/12/29 Python
html5中canvas图表实现柱状图的示例
2017/11/13 HTML / CSS
中国包裹转运寄送国际服务:Famiboat
2019/07/24 全球购物
哈理工毕业生的求职信
2013/12/22 职场文书
1亿有多大教学反思
2014/05/01 职场文书
公务员群众路线心得体会
2014/11/03 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
婚礼父母致辞
2015/07/28 职场文书
物业管理交接协议书
2016/03/24 职场文书
MySQL约束(创建表时的各种条件说明)
2022/06/21 MySQL
Python使用Opencv打开笔记本电脑摄像头报错解问题及解决
2022/06/21 Python