0

我已阅读 dynatree 开发人员提供的示例。在其中一个显示将“expand:true”放入节点中时,它从一开始就显示为扩展。我创建了一个 sql 查询

Doctrine_Core::getTable('Folder')
              ->createQuery('f')
              ->select('slug as key, nombre as title,
                IF(id in ('.implode(',',$ancestors_id).'),true,false) as expand,
                true as isFolder,
                level');

并将返回的数组转换为 json 数组。

[
 {"id":"1","key":"qqwqeqwe","title":"qqwqeqwe","level":"0","expand":"true","isFolder":"1","children":
   [
     {"id":"2","key":"nombre-de-laaa","title":"nombre de laaa","level":"1","expand":"true","isFolder":"1","children":
          [
            {"id":"3","key":"tof","title":"TOF","level":"2","expand":"false","isFolder":"1","children":[]},
            {"id":"4","key":"dddd","title":"dddd","level":"2","expand":"true","isFolder":"1","children":[]}
          ]
     },
     {"id":"5","key":"ffffa","title":"ffffa","level":"1","expand":"false","isFolder":"1","children":[]}
   ]
 }
]

我将“expand:true”放在我想要显示为展开的节点及其祖先上。但是没有展开。
我尝试将“expand:true”仅放在我想要扩展的节点中,但它也不起作用。我已经用 expand:"true" 和 expand:true 进行了测试。字符串和逻辑

我究竟做错了什么?

4

3 回答 3

3

Expand 应该是一个布尔值,所以尝试"expand":true而不是"expand":"true"

于 2011-09-10T09:07:27.470 回答
2

我使用 onPostInit 函数解决了它

onPostInit: function(isReloading, isError) {
  var node = $("#tree").dynatree("getTree").getNodeByKey(folder);

  node.visitParents (function (node) {
    node.toggleExpand();
  }, true);         
}

在变量文件夹中,我有想要显示为展开的节点的键。所以我从树上得到它。我扩展了它和它的父母

于 2011-09-10T03:18:26.440 回答
0

由我自己解决,也许它可以帮助其他人:得到id扩展节点的这样做是这样的

onQueryExpand: function(node) {
  var superId = arguments[1].data.key;
}

如果我错了,请纠正我...

于 2012-06-04T08:41:22.163 回答