最近项目需要用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 使用心得的更多相关文章

  1. ztree使用心得

    一个很好用的Jquery树形控件 官网:http://www.ztree.me/v3/main.php#_zTreeInfo 我主要引用的文件为: //最新版的JS压缩包 <script src ...

  2. zTree & ckeditor &ValidateCode.jar 使用个人心得总结

    zTree:依靠 jQuery 实现的多功能 “树插件”. 使用时只需要将下载的压缩包接用,复制里边的css 和 js 到指定目录即可. 如图所示: 在zTree的官网可以找到各种类型树的示例: 地址 ...

  3. 利用ZTree链接数据库实现 [权限管理]

    最近想研究权限管理,看群里有人发了ZTrees模板,我看了下,觉得笔easyUI操作起来更灵活些,于是就开始研究了. 刚开始从网上找了找了个Demo,当然这个并没有实现权限啥的,但实现了前台调用Aja ...

  4. web前端开发控件学习笔记之jqgrid+ztree+echarts

    版权声明:本文为博主原创文章,转载请注明出处.   作为web前端初学者,今天要记录的是三个控件的使用心得,分别是表格控件jqgrid,树形控件ztree,图表控件echarts.下边分别进行描述. ...

  5. js插件ztree使用

    最新给公司后台写了一个配置页面,在网上搜到一个js插件ztree,记录一下使用心得. 首先说一下ztree官网,好多方法我都是从官网api上学习的,官网地址http://www.treejs.cn/v ...

  6. 树结构ztree的 ajax交互的简单使用

    今天做前端页面要用到树结构,用了第三方插件ztree,搞了好久不过终于弄出来了,, 一点小心得.(用的版本 V3 ) 首先看下载的文件结构: 一:将要用到的CSS 和 JS 拷贝到工程中,我这里在工程 ...

  7. jquery zTree插件 json 数据详解

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  9. NoSql数据库使用半年后在设计上面的一些心得

    NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 这个疑惑非常大,为此我看了很多分析文章, ...

随机推荐

  1. c#操作注册表的意外

    因为要在C/S程序中使用WebBrowser控件,因为默认的IE版本很低,无法使用Html5功能,故需通过把程序名写入注册表的方法指定IE版本. 但操作的过程中出现一个问题: 1.使用代码找到相关项, ...

  2. [2016北京集训试题6]网络战争-[最小割树(网络流)+kd-tree+倍增]

    Description A 联邦国有 N 个州,每个州内部都有一个网络系统,有若干条网络线路,连接各个 州内部的城市. 由于 A 国的州与州之间的关系不是太好,每个州都只有首府建立了到别的州的网络.具 ...

  3. Linux下开发python django程序(Session读写)

    1.登陆设置session信息 def loginsession(req): if req.method == 'POST': loginform = LoginForm(req.POST) if l ...

  4. QTableWidget具体解释(样式、右键菜单、表头塌陷、多选等) (非代理)

    在公司公示Qt开发一段时间,表格用到不少,所以,今天在这做个总结,防止以后忘记. 下面为个人模拟Windows资源管理器的一个表单.(写的比較粗糙,谅解一下) 一.设置表单样式 table_widge ...

  5. AtCoder ExaWizards 2019 D Modulo Operations

    题意 给出一个长度为\(n\)的数列和数字\(X\),对于数列的每一种排列,其权值\(X\)依次对排列中的数取模,求出\(n!\)种情况最后剩下的数的权值和 分析 如果大的数字排在小的数字后面,那么大 ...

  6. P4249 [WC2007]剪刀石头布

    有一个竞赛图,要给一些边定向,求三元环最多的数量 反过来考虑最少的不是环的三个点(称为不好的环),一定有一个点有2条入边,一个点有2条出边,一个点1入边1出边 可以对每一个不好的环只记录入边为2的点, ...

  7. encodeURIComponent(URIstring)

    函数可把字符串作为 URI 组件进行编码.

  8. Linux shell 编写(1)

    shell脚本的编写步骤 1.创建以.sh为扩展名的文件           touch 2.编辑脚本文件                              vim 3.增加脚本文件执行权限 ...

  9. 《杜增强讲Unity之Tanks坦克大战》7-坦克血条

    7 坦克血条 点击菜单GameObject->UI->Slider创建Slider   选中EventSystem,设置Horizontal Axis为HorzontalUI,Vertic ...

  10. 零基础学python之入门和列表数据(附详细的代码解释和执行结果截图)

    Python学习笔记 1 快速入门 下载安装好Python之后,在开始找到 双击打开一个窗口,这是一个shell界面编辑窗口,点击左上角的file——new file新建一个窗口,这里可以输入完整的代 ...