easyui-从数据库读取创建无极菜单
easyui-tree基础必须知道这个如下:
树控件使用<ul>元素定义。标签能够定义分支和子节点。节点都定义在<ul>列表内的<li>元素中。以下显示的元素将被用作树节点嵌套在<ul>元素中。
上面的代码将产生这样的一棵树
前台代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="treeMenu.aspx.cs" Inherits="WebApplication5.treeMenu" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<link href="../themes/icon.css" rel="stylesheet" />
<link href="../themes/default/easyui.css" rel="stylesheet" />
<link href="../src/demo.css" rel="stylesheet" />
<script src="../comjs/jquery-1.8.0.min.js" type="text/javascript"></script>
<script src="comjs/msgBox.js"></script>
<script src="../comjs/jquery.easyui.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
// new MsgBox().showMsgWait("稍等......");
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<ul id="tt" class="easyui-tree">
<li>
<span>Folder</span>
<ul>
<li>
<span>Sub Folder 1</span>
<ul>
<li>
<span><a href="#">File 11</a></span>
</li>
<li>
<span>File 12</span>
</li>
<li>
<span>File 13</span>
</li>
</ul>
</li>
<li>
<span>File 2</span>
</li>
<li>
<span>File 3</span>
</li>
</ul>
</li>
<li>
<span>File21</span>
</li>
</ul>
<%=sbs.ToString() %>
</div>
</form>
</body>
</html>
后台代码如下:
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication5
{
public partial class treeMenu : System.Web.UI.Page
{
public static List<treeMenus> treeMenuses = null;
public static StringBuilder sbs = new StringBuilder();
protected void Page_Load(object sender, EventArgs e)
{
treeMenuses = LoadMenu();
string zhongjie = string.Empty;
StringBuilder sb = new StringBuilder();
bool pfirst = true;
foreach (treeMenus treeNode in treeMenuses)
{
if (treeNode.Pid == 0)
{
sb.Append("<li>" + "<span>" + treeNode.Mid + "</span>" + subChild(treeNode.Mid) + "</li>");
sbs.Append(sb.ToString());
sb.Clear();
}
}
zhongjie = "<ul id='tt' class='easyui-tree'>" + sbs.ToString() + "</ul>";
sbs.Clear();
sbs.Append(zhongjie);
}
public string subChild(int mid)
{
int tag = 0;
bool first = true;
string chaojizhongjiezhe = string.Empty;
StringBuilder sbc=new StringBuilder();
foreach (treeMenus treeNode in treeMenuses)
{
if (treeNode.Pid == mid)
{
sbc.Append("<li>" +"<span>"+ treeNode.Mid +"</span>" + subChild(treeNode.Mid)+"</li>");
}
}
chaojizhongjiezhe = "<ul id='tt' class='easyui-tree'>" + sbc.ToString() + "</ul>";
sbc.Clear();
sbc.Append(chaojizhongjiezhe);
//sbc.Append("<ul id='tt' class='easyui-tree'>" + sbc.ToString() + "</ul>");
return sbc.ToString();
}
public List<treeMenus> LoadMenu()
{
List<treeMenus> list = new List<treeMenus>();
using (SqlConnection conn = new SqlConnection())
{
conn.ConnectionString = "Data Source=.;Initial Catalog=CompanyGZ;Integrated Security=True";
using (SqlCommand cmd = new SqlCommand())
{
string sql = "SELECT * FROM treeMenu;";
cmd.Connection = conn;
cmd.CommandText = sql;
conn.Open();
using (SqlDataReader reader = cmd.ExecuteReader())
{
string rsRows = "";
while (reader.Read())
{
treeMenus treeMenu = new treeMenus();
treeMenu.Pid = Convert.ToInt16(reader["pid"]);
//treeMenu.Cid = Convert.ToInt16(reader["cid"]);
treeMenu.Mid = Convert.ToInt16(reader["mid"]);
treeMenu.Id = Convert.ToInt16(reader["id"]);
//treeMenu.MName = Convert.ToString(reader["mName"]);
list.Add(treeMenu);
}
}
}
}
return list;
}
}
public class treeMenus
{
private int mid;
private int cid;
private int pid;
private int id;
private string mName;
public int Mid
{
get { return mid; }
set { mid = value; }
}
public int Cid
{
get { return cid; }
set { cid = value; }
}
public int Pid
{
get { return pid; }
set { pid = value; }
}
public int Id
{
get { return id; }
set { id = value; }
}
public string MName
{
get { return mName; }
set { mName = value; }
}
}
}
easyui-从数据库读取创建无极菜单的更多相关文章
- tp根据数据库动态创建微信菜单
喻可伟的博客 tp根据数据库动态创建微信菜单 $button = array();$class = M('ucenter_menu')->limit(3)->select();//取出 ...
- Java从数据库读取页面树形菜单
从数据库加载菜单及子菜单主要使用递归的方法,具体实现可看代码 首先封装一个菜单pojo public class Menu { // 菜单id private String id; // 菜单名称 p ...
- 《Entity Framework 6 Recipes》中文翻译系列 (38) ------ 第七章 使用对象服务之动态创建连接字符串和从数据库读取模型
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第七章 使用对象服务 本章篇幅适中,对真实应用中的常见问题提供了切实可行的解决方案. ...
- 雷林鹏分享:jQuery EasyUI 树形菜单 - 使用标记创建树形菜单
jQuery EasyUI 树形菜单 - 使用标记创建树形菜单 一个树形菜单(Tree)可以从标记创建.easyui 树形菜单(Tree)也可以定义在 元素中.无序列表的 元素提供一个基础的树(Tre ...
- 直接用bcdedit创建bootmgr数据库和修复启动菜单
直接用bcdedit创建bootmgr数据库和修复启动菜单 使用下面方法之前需要bcdedit和bootsect两条命令,这两条命令可以到vista或者windows 7安装光盘上获得.bootsec ...
- java从数据库读取菜单,递归生成菜单树
首先看一下菜单的样子 根据这个样子我们定义菜单类 public class Menu { // 菜单id private String id; // 菜单名称 private String name; ...
- Java 数据库树形查询生成菜单结构
Java 数据库树形查询 JAVA从数据库读取菜单,递归生成菜单树. 定义菜单类 public class Menu { // 菜单id private String id; // 菜单名称 priv ...
- EasyUI 的Tab 标签添加右键菜单
样式: 主要提供右键功能代码. (只需要提供你需要的js和css就行了) <!doctype html> <html> <head> <base href=& ...
- Oracle数据库如何创建DATABASE LINK?
Oracle数据库如何创建DATABASE LINK? 2011-08-09 14:54 taowei20061122 CSDN博客 http://blog.csdn.net/taowei20061 ...
随机推荐
- python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决
python 转换为json时候 汉字编码问题 2017年03月23日 18:50:04 阅读数:5604 有这样一个需求: 需要一个json 文件 数据从数据库里查询出来 1. 设置文件头 # -* ...
- 温故而知新复习下PHP面向对象
面向对象在PHP中是以类的形势展示的 PHP中的类是单继承的,用关键字extends来实现继承父类, 关键字public protected private 第一个是公开的 谁都可以访问,第二个只能本 ...
- windows安装python运行环境使用pycharm
pycharm下载地址: https://www.jetbrains.com/zh/pycharm/download/download-thanks.html 安装教程: https://blog.c ...
- 基于OpenGL编写一个简易的2D渲染框架-08 重构渲染器-整体架构
事实上,前面编写的渲染器 Renderer 非常简陋,虽然能够进行一些简单的渲染,但是它并不能满足我们的要求. 当渲染粒子系统时,需要开启混合模式,但渲染其他顶点时却不需要开启混合模式.所以同时渲染粒 ...
- 5 Python3 函数进阶&迭代器与生成器
1.函数进阶 1.1.名称空间 又名name space, 顾名思义就是存放名字的地方,存什么名字呢?举例说明,若变量x=1,1存放于内存中,那名字x存放在哪里呢?名称空间正是存放名字x与1绑定关系的 ...
- 关于gevent的一些理解(二)
3 实际应用 1 zeromq和gevent: zeromq的介绍请参看:http://www.infoq.com/cn/news/2010/09/introduction-zero-mq 假设你已经 ...
- Haskell语言学习笔记(35)Contravariant
contravariant 模块 contravariant 模块需要安装 $ cabal install contravariant contravariant-1.4 Prelude> :m ...
- Java Magic. Part 1: java.net.URL
Java Magic. Part 1: java.net.URL @(Base)[JDK, url, magic, 黑魔法] 英文原文 转载请写明:原文地址 系列文章: -Java Magic. Pa ...
- java-- 的子类/父类构造方法 转
前提:父类和子类同时都有有参的构造函数和无参构造函数. Java中的子类初始化时初值为空.调用顺序为先调用父类无参构造函数,然后调用子类无参构造函数. java中的子类初始化时初值不为空.调用顺序为先 ...
- Python 实践项目 游戏
https://www.zhihu.com/collection/92700207?page=1