问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用jquery ztree 怎样实现点击父节点固定个数的子节点也被选中

发布网友 发布时间:2022-05-06 15:27

我来回答

2个回答

热心网友 时间:2022-04-21 04:04

query ztree 当前父节点下增加子节点问题_点击事件增加子节点
一、功能描述:利用jQuery ztree3.1版本插件做导航树形菜单时,页面打开先加载二级菜单,通过点击事件,异步加载的方式,在添加当前父节点的子节点。
二、初始步骤:
1.按照文档要求,导入jquery包,ztree插件包3.1版本;
2.编写相应的jsp页面代码

三、遇到问题:
1、通过chrome调试的时候,提示:addNodes不是当前jquery对象treeObj的方法。但是在api文档里确实存在这个方法。
2、经过很长时间的摸索,开始把ztree-core.js插件换成高版本的,结果addNodes好用了,但是没有了菜单的图标,而且所有的都是异步加载。

四、解决问题:

原因:最后在3.2版本更新日志中,发现这么一句话:
* 【修改】代码结构,将 addNodes、removeNode、removeChildNodes 方法 和 beforeRemove、onRemove 回调 转移到 core 内。
最终领悟,原来3.2版本之前的addNodes。。。等一些方法在ztree.exedit.js中,而且在3.1文档中,方法前也有E字母标识。
所以只要引入jquery.ztree.exedit-3.1.js 包,即可解决这个问题。

五、总结
粗心浪费了好多时间,注意API中的小细节。
这是jqueryztree 各个版本的URL:http://code.google.com/p/jquerytree/downloads/list,供大家参考。

六、jsp代码,只需要加入jquery.ztree.exedit-3.1.js ,url换了即可。
%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>机构维护</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="../zTreeStyle/zTreeStyle.css" type="text/css"/>
<script type="text/javascript" src="../jquery-1.4.2.js"></script>
<script type="text/javascript" src="../jquery.ztree.core-3.1.js"></script>
<script type="text/javascript"
</head>
<body>
<div>
<ul id="orgTree" class="ztree" style="width:230px; overflow:auto;"></ul>

</div>

<script type="text/javascript">

//配置setting
var ztreeObj,

setting = {

async: {
enable: true,//开启异步加载模式
contentType: "application/json", //Ajax 提交参数的数据类型。
type: "post",
dataType: "text",//Ajax 获取的数据类型
"url" : "${pageContext.request.contextPath}/org/makeOrgTree.action",
//自动提交当前节点的id
//假设 异步加载 父节点(node = {id:1, name:"test"}) 的子节点时,将提交参数 id=1
autoParam: ["id"]

},

//Ajax 返回的数据格式中,页面主要参数的设置
data: {
simpleData: {
enable: true,
idKey: "id",
pIdKey: "pid",
rootPid: "0"
}
},

//树形图动作
view: {
expandSpeed: "fast", //节点展开的速度
selectedMulti: false //设置是否允许同时选中多个节点。
},

//回调函数的设置
callback: {
onClick: zTreeOnClick //点击事件,当点击节点,做的事情。
}
};

/**
* 初始化树形菜单
*/
$(function(){

ztreeObj = $.fn.zTree.init($("#orgTree"),setting);

});

//点击事件的处理
function zTreeOnClick(event,treeId,treeNode){
pid =treeNode.id;

var data = {"org.id":pid};

$.ajax({
url:"${pageContext.request.contextPath}/org/makeOrgTreeAgain.action",
type: "post",
dataType: "json",
data: data,
cache: false,
success: function(jsonArray){

var treeObj = $.fn.zTree.getZTreeObj("orgTree");

treeObj.addNodes(treeNode,jsonArray);
}
});
}

</body>
</html>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电视屏幕不亮但有声音是怎么回事 电视只出声音不出画面怎么调 每天做踩单车的运动能瘦腿吗? 踩单车能瘦腿吗 知道踩自行车能瘦腿吗 注意姿势才是关键 踩自行车可以瘦腿吗 踩单车的好处是什么?怎样进行瘦腿? Adobe AIR是什么?能做什么? adobeair是什么软件,可不可以卸载?? 15--18万之间的车 怎么写一个jQuery实现ztree的重用 jquery ztree怎么一键收拢 在上海有交医疗保险,那么老家的新农合还需要继续交吗 在学校已交医疗保险还应交新农合吗 在外地上班交了医保,但现在辞职回老家了,老家还要交新农村合作医疗吗? 疟原虫引起的疾病 交了医保还交新农合吗 在CAD 中画A3图的图框怎么画 在图框里画414米的直线怎么画? 求告知 速度 谢谢 疟疾最新情况! 求计算缓和曲线EXCEL表格,有的M我。 本人急需带缓和曲线的超高高程计算&#92;加宽宽度计算程序,最好是用excel做的(包括边桩高程计算),谢谢 缓和曲线计算长度68米,超高过渡段长度64米,则缓和曲线实际长度为多少?并说明理由 请问婚嫁在领证后多久内有效 网页 下载 打印 哪位告诉我,谢谢了。1、在网页上的一篇文章如何把它打印下来?2、怎样在电脑上下载视频? 急!缓和曲线偏角法计算公式? 野兔的特性、生活习惯、吃什么。字最少 婚假的有效期 铁路缓和曲线超高计算? 缓和曲线超高计算公式 jquery ztree 在一个页面有两个树,怎么让点击一个树的节点,让另一个... ztree插件怎么实现搜索 jquery怎么获取点击的ztree树 jquery ztree+jquery easyUI创建tab页签问题 jquery ztree 如何动态修改 Jquery ZTREE问题求教 zTree 如何跟 jquery取得的数据生成树 ztree 右键菜单 重命名 ,新名称值传入后台 关于jQuery的ztree制作树形菜单的问题 jquery 怎样获得选中的ztree项? jquery动态显示数据中的数据,保证数据库可以随便添加ztree节点... jquery 的ztree 同步和异步混合加载树节点怎么实现 jquery ztree 兼容问题 谁能帮我写一下《楚门的世界》英文影评! 谁能帮我写一下《楚门的世界》英文影评 楚门的世界英语影评用英语怎么说 谁能帮我写一下《楚门的世界》英文影评,不要在百度搜 急求《楚门的世界》英文影评!!!不需要太长,太复杂。。。拜托 楚门的世界英语影评 300字左右 强调自己的收获 与心得 自己在家里可以做葡萄酒吗?