标签: fancytree

重新加载整个Fancytree

我有一个带有不同选项的组合框,每个选项都会给屏幕带来一个奇特的花哨.

我做一个ajax调用来获取fancytree的源代码,但它没有重新加载并且一次又一次地显示相同的选项.

部分代码:

$.ajax({
 url: "get_treedata.php",
 type: "POST",
 data: {
       id: id
       },
 success: function(json){
   console.log(json);

    var mynodes = JSON.parse(json);
    $('#t-board').fancytree( // t-board is my div container
       {
          source: mynodes,
          ... // my other options
    });
  }
});
Run Code Online (Sandbox Code Playgroud)

该代码位于我在组合框的"onchange"中调用的函数内.告诉我你的想法,如果我需要更具体或什么.

提前致谢.

ajax jquery fancytree

15
推荐指数
3
解决办法
1万
查看次数

没有连接器或jQuery FancyTree可见的图标

我正在尝试使用FancyTree jquery插件实现基于Web的文件夹浏览器.经过一些出牙问题,我的工作做得很好.唯一的问题是FancyTree不显示任何连接线或图标.严格仅限文本,分别使用+和 - 图标进行展开和折叠.我曾经想象过这样一个面向文件系统的插件,它有默认的图标,例如封闭和打开的文件夹等等.所以我还没有指定自定义图标,但连接线更让我困扰.

我从它的GitHub repo拼凑了我的FancyTree源代码,我的源文件夹如下所示.这是从挑选源代码,因为distFancyTree 的文件夹有点稀疏:

在此输入图像描述

这就是我引用样式和脚本的方式.开发只是为了简洁:

<link rel="stylesheet" href="~/css/site.css" />

<link href="~/lib/fancytree/jquery-ui.css" rel="stylesheet" />
<link href="~/lib/fancytree/jquery-ui.structure.css" rel="stylesheet" />
<link href="~/lib/fancytree/jquery-ui.theme.css" rel="stylesheet" />
<link href="~/lib/fancytree/skin-bootstrap/ui.fancytree.css" rel="stylesheet" />
Run Code Online (Sandbox Code Playgroud)

额外的样式来自于jQuery UI的最小自定义下载,这是FancyTree的依赖.脚本:

<script src="~/lib/jquery/dist/jquery.js"></script>
<script src="~/lib/bootstrap/dist/js/bootstrap.js"></script>
<script src="~/lib/fancytree/jquery-ui.js"></script>
<script src="~/lib/fancytree/jquery.fancytree-all.js"></script>
Run Code Online (Sandbox Code Playgroud)

我只想象一个丢失或错误的images位置,但肯定这应该使用glyphicons样式图标.我没有指定任何自定义图标,但预期默认值.如果我可以获得自定义图标,那么我真正关心的是缺少连接线.

BREAKING:如果我强制连接器根据这个SO答案显示,通过在树启动时添加一个类:

$(".fancytree-container").addClass("fancytree-connectors");
Run Code Online (Sandbox Code Playgroud)

我得到了连接器的垂直部分,但在水平方向上看不到任何东西.,只是文本,通常比具有线条的树缩进和可读性差.

css jquery fancytree

13
推荐指数
1
解决办法
1060
查看次数

可能更新/重新加载所选节点?

我一直在以fancytree作为树视图开展一个项目.适用于Ajax和服务器调用.怎么样 我仍然想知道是否有可能重新加载一个选定的节点以获得有关其子节点的更新?我见过并试过这个Reload()功能.但它似乎只重新加载任何树结构,这是不必要的.

否则,你知道支持这种节点重载的任何其他树视图吗?

jquery fancytree

9
推荐指数
1
解决办法
7142
查看次数

使用列视图ext时是否可以设置fancyTree的高度

我一直在使用fancytree插件一段时间,并设法解决了我遇到的大多数问题,但是我现在有点卡住了....

我刚刚开始使用列视图扩展,并想知道是否有办法设置表的高度,并能够在该固定高度内滚动.我正在回溯100多个结果,需要将表格调整到特定的页面区域.

我已经尝试用一个设置高度div围绕桌子,但这只是切断了桌子,并试图限制tbody的大小但无济于事

为了实现列视图,我使用了这个例子 - http://wwwendt.de/tech/fancytree/demo/sample-ext-columnview.html

任何建议都会受到欢迎.

谢谢,克里斯

html css jquery angularjs fancytree

7
推荐指数
1
解决办法
2469
查看次数

Fancytree jQuery插件 - 选择节点

我很难从fancytree插件中选择给定节点.

所以,我尝试过类似的东西:

$("#tree").fancytree("getTree").visit(function(node){
    node.select(n);
});
Run Code Online (Sandbox Code Playgroud)

其中"n"是表示节点id的任何数字,但即使文档中存在select()函数,它也不起作用

有人可以帮忙吗?

javascript jquery fancytree

7
推荐指数
1
解决办法
5370
查看次数

将fancytree数据作为JSON数据传递

我想将数据从fancytree传递给通用处理程序,以便我可以将其保存以备将来使用.

如果我使用此代码:

function SaveTree() {
    var tree = $('#TopTree').fancytree("getTree");
    $.ajax({
        cache: false,
        url: "SaveTree.ashx",
        data: { 'treeData': tree },
        contentType: "application/json; charset=utf-8"
    });
}
Run Code Online (Sandbox Code Playgroud)

然后我从jquery.js得到以下错误:

JavaScript runtime error: Argument not optional
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

var tree = $('#TopTree').fancytree("getTree").rootNode.children;
Run Code Online (Sandbox Code Playgroud)

这给出了同样的错误.我理解这是因为'tree'不是JSON.如何将数据转换为JSON对象?

编辑:

如果我使用此代码:

function SaveTree() {
    var data = [];
    var tree = $('#TopTree').fancytree("getTree").rootNode.children;
    for (var i = 0; i < tree.length; i++) {
        data.push(tree[i].title)
    }
    data = JSON.parse(JSON.stringify(data))
    $.ajax({
        cache: false,
        url: "SaveTree.ashx",
        data: { 'treeData': data },
        contentType: "application/json; charset=utf-8"
    });
} …
Run Code Online (Sandbox Code Playgroud)

json generic-handler fancytree

6
推荐指数
1
解决办法
5533
查看次数

自定义节点图标在 Fancytree 中不起作用

我一直在我正在从事的一个项目中使用“Fancytree”,直到今天为止我对它非常满意。我需要在树中的某些节点上显示不同的图标,但到目前为止,还无法让它们显示在树上。

我在 JSON 字符串中指定自定义节点图标,我用它来加载树:

[{
    "title": "Inventory",
    "key": "DocFolders/1026",
    "folder": true,
    "data": {
        "icon": "LockedFolder.gif",
        "isLocked": true
    }
}, {
    "title": "Telemetry",
    "key": "DocFolders/1027",
    "folder": true,
    "data": {
        "icon": "LockedFolder.gif",
        "isLocked": true
    }
}, {
    "title": "Well Documents",
    "key": "DocFolders/1028",
    "folder": true,
    "data": {
        "icon": "LockedFolder.gif",
        "isLocked": true
    },
    "expanded": true,
    "children": [{
        "title": "4-13 Spectrum Core PG&E Data.xlsx",
        "key": "SpectrumDocs/961"
    }]
}, {
    "title": "Well Photos",
    "key": "DocFolders/1029",
    "folder": true,
    "data": {
        "icon": "LockedFolder.gif",
        "isLocked": true
    }
}]
Run Code Online (Sandbox Code Playgroud)

以下是加载树的 …

css jquery json fancytree

5
推荐指数
1
解决办法
4707
查看次数

Fancytree getSelectedNodes不使用select事件

我使用fancytree插件来呈现目录,然后在这个fancytree旁边是一个按钮.用户应该单击此按钮,我应该从树中获取所选节点的列表并使用它执行某些操作.

如何在button.click事件中从树中访问所选节点的列表?

$('#button').click(function() {
   // how to get selected nodes in tree
});
Run Code Online (Sandbox Code Playgroud)

jquery fancytree

5
推荐指数
2
解决办法
6846
查看次数

禁用FancyTree节点

反正有禁用fancytree节点吗?我正在使用Select:2选项和Ajax调用来填充树。我从数据库获取数据,需要显示我的预选节点已选择并禁用,如下所示。 在此处输入图片说明

一种选择是将以下属性设置为:

hideCheckbox:true

已选择:true

但这会使复选框处于隐藏状态(如下面的绿色背景所示) 在此处输入图片说明

我不能只禁用节点本身(如第一个图片中所示)吗?类似以下选项的整个树的遍历。

禁用:false (禁用树)

更新

如果我使用unselectable true,那么我将取消选中复选框。(下面的屏幕)

不可选择:true

已选择:true

在此处输入图片说明

javascript jquery fancytree

5
推荐指数
1
解决办法
2606
查看次数

如何在 fancytree 中将过滤与延迟加载结合起来?

有没有办法既启用过滤又延迟加载fancytree中的节点?我期望这样的行为:

  • 用户可以在树中行走,单击时加载每个节点。这是由延迟加载功能支持的
  • 当用户将某些内容放入过滤器输入时,将执行对搜索服务器的 API 调用,并且 fancytree 会在树中接收元素及其父元素。Fancytree 正在渲染元素

javascript fancytree

5
推荐指数
0
解决办法
520
查看次数

标签 统计

fancytree ×10

jquery ×8

css ×3

javascript ×3

json ×2

ajax ×1

angularjs ×1

generic-handler ×1

html ×1