首页新闻找找看学习计划

ztree 异步加载 节点点击无法触发

0
悬赏园豆:5 [已解决问题] 解决于 2013-03-15 19:09

代码:

    var setting = {
        async: {
            enable: true,
            url: "BDSys_List.ashx?&action=userTree",
            asyncParam: ["id", "pId", "name"],    //异步调用时传到后台的参数
            otherParam: { "otherParam": "zTreeAsyncTest" },
            dataFilter: filter
        }
    };
    function filter(treeId, parentNode, childNodes) {
        for (var i = 0; i < childNodes.Rows.length; i++) {
            childNodes.Rows[0]['open'] = true;
            childNodes.Rows[i]['id'] = i;
            childNodes.Rows[i]['pId'] = 0;
            childNodes.Rows[i]['name'] = childNodes.Rows[i]['DeviceID'];
        }
        return childNodes.Rows;
    }
$(function () {
        $.fn.zTree.init($("#userTree"), setting);
    });

 

首次的时候就加载了列表 在点击节点的时候 就没有提交请求了 我在服务器打了断点 只有第一次进来了   请问大侠 问题在那呢?

KyrieYang的主页 KyrieYang | 初学一级 | 园豆:5
提问于:2013-03-15 17:02
< >
分享
最佳答案
0

缺少回调事件 

callback: {

beforeExpand: function (treeId, treeNode) {

  zTree.setting.async.url = "BDSys_List.ashx?&action=userTree";

  if (treeNode.isParent) {
    zTree.expandNode(treeNode);
    return false;
  }

}

}

收获园豆:5
geass.. | 小虾三级 |园豆:1751 | 2013-03-15 17:21

不是回调函数的问题  我调式了下那个能正常运行的   是节点绑定的数据格式属性有问题  谢谢了 朋友 !

KyrieYang | 园豆:5 (初学一级) | 2013-03-15 19:09
其他回答(1)
0

每次只返回第一层子节点,子节点追加isParent属性,判断是否还有孩子节点,页面根据这个属性判断是否异步加载。

keily | 园豆:202 (菜鸟二级) | 2014-04-03 22:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册