ztree 使用心得
最近项目需要用ztree ,初步研究感觉这个插件写的实在是太好了。现总结遇到的问题
封装一颗树
/**
* 按类型分组树
* Id 按类型分组ID
* treeId 树ID
* treeDivId divid
*
* **/
function carTypeGroup(id,treeId,treeDivId){
var o=new Object();
o.showMenu = function () {
//输入框的ID
var cityOffset = $("#" + id).position();
$("#" + treeDivId).css({left: cityOffset.left + "px"}).slideDown("fast");
$("body").bind("mousedown", o.onAreaBodyDown); }; o.onAreaBodyDown = function (event) {
if (!( event.target.id == treeDivId || $(event.target).parents("#" + treeDivId).length > 0)) {
o.areaHideMenu();
}
}; o.areaHideMenu = function () {
$("#" + treeDivId).fadeOut("fast");
$("body").unbind("mousedown", o.onAreaBodyDown);
//var treeObj = $.fn.zTree.getZTreeObj(treeId);
//treeObj.expandAll(false); };
//点击勾选checkbox 执行函数
o.treeChecked = function (event, treeId, treeNode) {
var treeObj = $.fn.zTree.getZTreeObj(treeId);
var checkCount = treeObj.getCheckedNodes(true);
var namestr = "";
var idstr = "";
//获取到所有的被选中的
for (var i = 0; i < checkCount.length; i++) {
namestr += checkCount[i].name + ",";
idstr += checkCount[i].id + ",";
}
//后续操作根据自身要求写。
$("#groupByTollgate").val(idstr.substring(0, idstr.length - 1));
}
var setting = {
check: {
enable: true,
chkStyle: "checkbox",
chkboxType: {"Y": "s", "N": "ps"}
},
data: {
simpleData: {
enable: true
}
},
callback: {
onCheck: o.treeChecked
}
}; var zNodes =[
{ id:1, pId:0, name:"ss", open:true},
{ id:11, pId:1, name:"111"},
{ id:12, pId:1, name:"112"},
{ id:13, pId:1, name:"113"},
{ id:2, pId:0, name:"gfg", open:true},
{ id:21, pId:2, name:"111"},
{ id:22, pId:2, name:"112"},
{ id:23, pId:2, name:"113"},
{ id:3, pId:0, name:"nhk", open:true},
{ id:31, pId:3, name:"111"},
{ id:32, pId:3, name:"112"},
{ id:33, pId:3, name:"113"} ]; $.fn.zTree.init($("#" + treeId), setting, zNodes); return o;
}
其中遇到一个需求是,每次勾选的checkbox 再次点击的时候,让以前选过的默认是选中状态,也就是数据回显
/* *
* tree 回显选中值
*/
function initCarSelect(codeId, treeId) {
var org = $("#" + codeId).val();
var zTree = $.fn.zTree.getZTreeObj(treeId);
var arr = org.split(",");
for (var i = 0; i < arr.length; i++) {
var node = zTree.getNodeByParam("id", arr[i], null);
if(node!==null){
zTree.checkNode(node, true, true);
}
}
}
ztree 使用心得的更多相关文章
- ztree使用心得
一个很好用的Jquery树形控件 官网:http://www.ztree.me/v3/main.php#_zTreeInfo 我主要引用的文件为: //最新版的JS压缩包 <script src ...
- zTree & ckeditor &ValidateCode.jar 使用个人心得总结
zTree:依靠 jQuery 实现的多功能 “树插件”. 使用时只需要将下载的压缩包接用,复制里边的css 和 js 到指定目录即可. 如图所示: 在zTree的官网可以找到各种类型树的示例: 地址 ...
- 利用ZTree链接数据库实现 [权限管理]
最近想研究权限管理,看群里有人发了ZTrees模板,我看了下,觉得笔easyUI操作起来更灵活些,于是就开始研究了. 刚开始从网上找了找了个Demo,当然这个并没有实现权限啥的,但实现了前台调用Aja ...
- web前端开发控件学习笔记之jqgrid+ztree+echarts
版权声明:本文为博主原创文章,转载请注明出处. 作为web前端初学者,今天要记录的是三个控件的使用心得,分别是表格控件jqgrid,树形控件ztree,图表控件echarts.下边分别进行描述. ...
- js插件ztree使用
最新给公司后台写了一个配置页面,在网上搜到一个js插件ztree,记录一下使用心得. 首先说一下ztree官网,好多方法我都是从官网api上学习的,官网地址http://www.treejs.cn/v ...
- 树结构ztree的 ajax交互的简单使用
今天做前端页面要用到树结构,用了第三方插件ztree,搞了好久不过终于弄出来了,, 一点小心得.(用的版本 V3 ) 首先看下载的文件结构: 一:将要用到的CSS 和 JS 拷贝到工程中,我这里在工程 ...
- jquery zTree插件 json 数据详解
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- NoSql数据库使用半年后在设计上面的一些心得
NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 这个疑惑非常大,为此我看了很多分析文章, ...
随机推荐
- Python连接MySQL数据库执行sql语句时的参数问题
由于工作需要,今天写了一个Python小脚本,其中需要连接MySQL数据库,在执行sql命令时需要传递参数,结果出问题了.在网上查了一下,发现有以下几种方式传递参数: 一.直接把sql查询语句完整写入 ...
- c++ 常量指针
一.指向常量的指针 定义形式: const 类型 * 指针名; 不能通过指针修改地址里的值. int i=0x123; const int *p=&i; *p=; //错误 //前置const ...
- 洛谷 P1142 轰炸
洛谷 P1142 轰炸 题目描述 “我该怎么办?”飞行员klux向你求助. 事实上,klux面对的是一个很简单的问题,但是他实在太菜了. klux要想轰炸某个区域内的一些地方,它们是位于平面上的一些点 ...
- 【转载】MSXML应用总结 概念篇
原文:http://blog.sina.com.cn/s/blog_48f93b530100e9tr.html 微软提供了大量的XML开发工具和技术,而SMXML(Microsoft XML Core ...
- jquery validate 使用示例
var el = { $jsFrom: $('.js-form'), }; // 检测用户名是否存在 jQuery.validator.addMethod("isexist", f ...
- C#时间间隔
System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch(); stopwatch.Start(); stop ...
- python实现屏保计时器
什么都不说先上图吧,Python 初学者实现屏保计时器 原理:利用 Python turtle 库实现快速画图,每隔一秒钟擦除屏幕,然后获得电脑实时时间,再次画图,呈现动态时间. 关于数字如果画,可以 ...
- electron快速开始
初学electron 接触了两周的electron,感觉还不错,以后pc端基本上可以用electron加壳写pc端应用了,可以用nodejs的模块,也可以用es6.7,还可以直接操作系统文件.基本上可 ...
- 人工智能AI芯片与Maker创意接轨(下)
继「人工智能AI芯片与Maker创意接轨」的(上)篇中,认识了人工智能.深度学习,以及深度学习技术的应用,以及(中)篇对市面上AI芯片的类型及解决方案现况做了完整剖析后,系列文到了最后一篇,将带领各位 ...
- python函数式编程,性能,测试,编码规范
这篇文章主要是对我收集的一些文章的摘要.因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章. 我的总结主要集中在四个基本题目上:函数式编程,性能,测试,编码规范.如果一个 ...