Jquery easyui Tree的简单使用
Jquery easyui Tree的简单使用
Jquery easyui 是jQuery EasyUI是一组基于jQuery的UI插件集合,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。开发者不需要编写复杂的javascript,也不需要对css样式有深入的了解,开发者需要了解的只有一些简单的html标签。
Jquery easyui 官网:http://jeasyui.com/ ,中文网站:http://www.jeasyui.net/,jquery easyui 下载地址:http://jeasyui.com/download/index.php
在项目中有时需要页面设计,不巧美工前端人员比较忙或者其他原因,造成敲代码的程序猿不得不进行ui设计,此时可以尝试easyui。
进入正题,本文分两部分介绍easyui中tree的使用:
首先我们需要引用两个文件一个是 主题样式css文件,一个是easyui核心js文件(easyui依赖jquery,如果没有引用,需要添加引用)

在想要生成tree的ul加上class "easyui-tree"
1.静态数据Tree,结构确定,数据是确定的,数据直接在html写死的
2.动态数据Tree,结构不确定,动态数据,数据需要从服务器端获取
- 静态数据Tree
静态数据tree代码示例:
<ul class="easyui-tree" id="nav_ul">
<li><a href="default.aspx">信息管理</a> </li>
<li><a href='columnManage.aspx'>栏目管理</a></li>
<li><a href="ContentManage.aspx">内容管理</a></li>
<li><a href="RecycleContent.aspx">内容回收站</a></li>
<li><span>资源管理</span>
<ul>
<li><a href="ResourceManage-0.aspx">CSS管理</a></li>
<li><a href="ResourceManage-1.aspx">JS管理</a></li>
</ul>
<li><span>模板管理</span>
<ul>
<li><a href="ResourceManage-2.aspx">内容页模板管理</a></li>
<li><a href="ResourceManage-3.aspx">栏目页模板管理</a></li>
</ul>
</li>
</li>
</ul>在浏览器中的效果:
,可以根据自己想要实现的样式,进行样式的调整,建议加页面内联样式或行内样式,不要直接修改easyui的css文件 - 动态数据Tree
动态数据tree前台html代码示例:
<ul id="tt" class="easyui-tree" data-options="url:'/Handlers/getTypesNodeHandler.ashx'"></ul>
url代表的是从服务器端获取tree的数据的处理程序路径
经过使用 Fiddle调试可以发现每次请求时,请求参数为“id”,值为选择节点的id
服务器端处理程序getTypesNodeHandler.ashx示例代码:
移除tree当前选择项,当选中tree的某个 节点时,对应节点会多一个class为“tree-node-selected ”的样式,将这个样式去掉就可以移除选择的tree的选项
$(".tree-node-selected").removeClass("tree-node-selected");
using System; namespace Models.FormatModel
{
public class TreeModel
{
//节点id
public int id { get; set; } //节点显示的文本
public string text { get; set; } //open 、closed
public string state { get { return "closed"; } }
}
}
TreeModel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace WebApplication1.Handlers
{
/// <summary>
/// Summary description for getTypesNodeHandler
/// </summary>
public class getTypesNodeHandler : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
int parentId = ;
int.TryParse(context.Request["id"], out parentId);
List<Models.Category> types = null;
try
{
//判断父节点的值
if (parentId > )
{
//加载子级菜单
types = CommonNews.Helper.OperateContext.Current.LoadSecondaryCategory(parentId);
}
else
{
//加载顶级菜单
types = CommonNews.Helper.OperateContext.Current.LoadTopCategory();
}
//判断是否有值,有值的话先转换为tree模型再转换为json输出,没有值直接输出空字符串
if (types != null)
{
//转换为tree模型
List<Models.FormatModel.TreeModel> tree = types.Select(t => new Models.FormatModel.TreeModel() { id = t.CategoryId, text = t.CategoryName }).ToList();
//转换为json格式数据输出
context.Response.Write(Common.ConverterHelper.ObjectToJson(tree));
}
else
{
context.Response.Write("");
}
}
catch (Exception ex)
{
new Common.LogHelper(typeof(getTypesNodeHandler)).Error(ex);
context.Response.Write("error");
}
} public bool IsReusable
{
get
{
return true;
}
}
}
}
getTypesNodeHandler
Jquery easyui Tree的简单使用的更多相关文章
- Jquery easyui tree的使用
这个ui用的一切都是json数据.树也是如此! 后台需要返回与格式匹配的json数据才能正确加载树. 页面定义一个ui: <ul id="messageInfoAddTree" ...
- 雷林鹏分享:jQuery EasyUI 窗口 - 创建简单窗口
jQuery EasyUI 窗口 - 创建简单窗口 创建一个窗口(window)非常简单,我们创建一个 DIV 标记: Some Content. 现在运行测试页面,您会看见一个窗口(window)显 ...
- jquery easyui tree dialog
<script type="text/javascript" src="<%=request.getContextPath()%>/include/ja ...
- Jquery EasyUI Tree .net实例
图片: 针对tree: 数据库: CREATE TABLE [dbo].[SystemModel]( [Id] [,) NOT NULL, [Name] [nvarchar]() NULL, [Fat ...
- Jquery easyui tree 一些常见操作
Tree: easyui tree的异步加载实现很简单,easyui的中文API文档中有实例(http://api.btboys.com/easyui/)——创建异步树形菜单,就是在tree node ...
- Jquery EasyUI Tree树形结构的Java实现(实体转换VO)
前一阵做的OA项目,有一个是组织架构的树,因为是分开做的,我做的是Controller和页面,其他组做的Service和Dao,因为之前一直没有商量页面用什么框架做比较好,导致,Dao层取出来的数据都 ...
- 如何采用easyui tree编写简单角色权限代码
首先每个管理员得对应一个角色: 而角色可以操作多个栏目,这种情况下我们可以采用tree多选的方式: 在页面上js代码: $('#Permission').dialog({ title: '栏目权限', ...
- JQuery EasyUI Tree组件的Bug记录
记录一下使用项目中使用EasyUI遇到的bug,废话少说直接上菜 - _-(bug)..... bug :: .netcore创建一个web应用时候,会自动引入jQuery库以及一些插件,但是在 ...
- JQuery EasyUI Tree
Tree 数据转换 所有节点都包含以下属性: id:节点id,这个很重要到加载远程服务器数据 which is important to load remote data text: 显示的节点文本 ...
随机推荐
- ES6转ES5:Gulp+Babel
目标: ES6代码转成ES5 对转换后的ES5进行压缩 以上步骤自动监控执行 步骤: 1.安装插件 在命令行中定位到项目根目录 安装全局 Gulp npm install -g gulp 安装项目中使 ...
- 如何将ToolBar 样式设置Title文字水平居中
以下是我的activity.xml的代码,线性布局.<android.support.v7.widget.Toolbar android:id="@+id/toolba ...
- 使用C语言描述静态链表和动态链表
静态链表和动态链表是线性表链式存储结构的两种不同的表示方式. 静态链表的初始长度一般是固定的,在做插入和删除操作时不需要移动元素,仅需修改指针,故仍具有链式存储结构的主要优点. 动态链表是相对于静态链 ...
- 数据可视化(2)--Justgage
JustGage 是一个 JavaScript 插件来生成很漂亮的仪表盘,基于 Raphaël 库做向量图绘制. JustGage 完全基于 SVG,因此支持几乎所有浏览器,包括:IE6+, Chro ...
- SQL Server 2012:SQL Server体系结构——一个查询的生命周期(第2部分)
计划缓存(Plan Cache) 如果SQL Server已经找到一个好的方式去执行一段代码时,应该把它作为随后的请求重用,因为生成执行计划是耗费时间且资源密集的,这样做是有有意义的. 如果没找到被缓 ...
- UINavigationItem和UItabBarItem的区别详解
一.UINavigationItem 1> 获得方式 self.navigationItem // self是指控制器 2> 作用 可以用来设置当前控制器顶部导航栏的内容 // 设置导航栏 ...
- BZOJ1003 物流运输 最短路+DP
1003: [ZJOI2006]物流运输 Description 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个码头.物流公司通常会设计一条 ...
- angular中$cacheFactory缓存的使用
最近在学习使用angular,慢慢从jquery ui转型到用ng开发,发现了很多不同点,继续学习吧: 首先创建一个服务,以便在项目中的controller中引用,服务有几种存在形式,factory( ...
- Scrum 项目 7.0
------------------7.0------------------------------ Sprint回顾 1.回顾组织 主题:“我们怎样才能在下个sprint中做的更好?” 时间:设定 ...
- 投票系统 & 简易js刷票脚本
早就听说有什么刷票脚本,微博投票等等相关的投票都有某些人去刷票. 试一下吧,兴许自己也会刷票呢?捣鼓了几个小时,终于有所眉目. (1)投票系统 要刷票,就得先有个投票界面. 当然,可以直接去各个投票网 ...