jquery. ztree 初始化的时候先获取了一部分节点数据显示树结构,当点击每个节点的时候需要

jquery. ztree 初始化的时候先获取了一部分节点数据显示树结构,当点击每个节点的时候需要,第1张

ztree异步加载节点时候需要提供一个url。

ztree初始化完会向这个url发送一次请求【注意这个时候是不会带参数的】。这个时候你需要返回给它你想要的节点。

ps:我是返回一个根节点给它。

然后在点击此时的节点时候,还是会向这个url发送请求【此时会带配置的参数】,如果你现在的处理方式和初始化之后那样,就还是返回你开始的那些节点给你。

所以,你需要根据不同的动作来处理你的返回值。

async : {

    enable : true,

    url : _map.url,//异步路径

    autoParam : ["id","name" ],//请求携带节点上的属性值

    dataFilter : function(treeId, parentNode, childNodes) {

    if (!childNodes)return null

    for (var i = 0, l = childNodes.length i < l i++) {

    var _c=childNodes[i]

    _c.isParent=_c.parent

    childNodes[i].name = _c.name.replace(/\.n/g, '.')

    }

    return childNodes

    }

      },

//只是提供处理思路 不需要copy

 @RequestMapping("/getOrg")

@ResponseBody

public  List<ObjectTypeBean> getOrg(HttpServletRequest request,ObjectTypeBean bean,@RequestParam Map<String,String> para) {

List<OrgBo> list = new ArrayList<OrgBo>()

if(para.size()<1){

OrgBo bo = null

bo = orgService.getOrgByNo(GlobalValue.ORGROOT)

list.add(bo)

}else{

String id = para.get("id")//根据父节点ID获取子节点

list = orgTreeService.getChildOrgsForTree(id,Constants.DEFAULT_ORG_RELA_TYPE)//orgSpiService.getChildOrgs(id, "")

}

List<ObjectTypeBean>   _list = new ArrayList<ObjectTypeBean>(list.size())

for(OrgBo _b : list){

_list.add(new ObjectTypeBean(_b.getNo(), _b.getParentNo(), _b.getShortName(),!_b.isLeaf()))

}

return _list

}

请不要再多给节点添加 click 事件了,完全没有必要,只会影响性能。

zTree 是以节点数据为核心,并且提供了自己的 onClick 回调,而且 zTree 的所有回调都会返回 节点数据 json 对象,通过 json 对象你可以随意取得自定义的任何属性。

例如: 你自定义了 A属性, 在节点 “aa" 内, 那么节点aa 的数据可能为: {"name":"aa", "id":1, "pId":-1, A:"test"}

那么在任何回调中得到的 treeNode 数据就是这个 json 对象的clone,获取A 只需要: treeNode.A

另外,你也可以利用 调试工具 console.log 打印 treeNode ,就可以看到了!

当数据适合同步加载,但又不想每次打开页面就自动运算出var

zNodes的值,因为很多时候打开页面都用不到ztree树,为了提高效率只想在需要用到并点击的时候才赋值给var

zNodes,才d出ztree的树来,所以我就把以下这段代码放到了showMenu()中

j$(document).ready(function(){

j$.fn.zTree.init(j$("#treeDemo"), setting,zNodes)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10706376.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存