- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 fancytree 实现,其中每个父节点都有一个可以选择的子节点。在用户选择了特定的 child 之后,她可以保存她的选择和设置,以便她以后可以回来使用。
除了我对以前保存的数据进行初始加载时,我能够完成所有这些操作。我需要做的是识别需要打开的节点(及其子节点),然后让 Fancytree 打开这些节点并选择子节点。
我正在使用延迟加载,当延迟加载事件触发时,我能够检查是否需要选择子项并根据需要进行选择。我想要做的是以编程方式做同样的事情,以便加载所有先前选择的子项并在加载时选择。目前,我正在以这种方式尝试:
function getMultipleFieldsNoReset(element,selectedFieldsArray) {
var fieldCreator = element.value;
var tree = $("#multipleFields").fancytree("getTree");
var treeOptions = {
url: "urltogetdata",
type: "POST",
data: {
id: fieldCreator
},
dataType: "json"
};
tree.reload(treeOptions);
for (var i = 0, len = selectedFieldsArray.length; i < len; i++) {
var valueAry = selectedFieldsArray[i].split("-");
var growerNode = valueAry[0];
var farmNode = valueAry[1];
var fieldNode = valueAry[2];
var node = tree.getNodeByKey(growerNode);
console.log(node);
}
}
我的问题是 tree.getNodeByKey(growerNode) 永远找不到节点,即使我能够在运行后在控制台中找到该节点。似乎父节点尚未加载,这可能会导致此问题,但我不确定在哪里可以设置complete 函数。我在哪里可以做到这一点?或者更好的是,有没有更简洁的方法来处理这个问题?
最佳答案
OP/Fletchius 已经找到了这个问题的解决方案,下面是它的答案。我以某种不同的方式实现了它,但事件 loadChildren
是相同的。我们都从中找到了解决方案。只是我正在加载那些节点,这些节点是选定的节点和 lazy true
意味着在这个节点之后有子节点。并且只有 lazy=true
对 this.load();
显式事件有用。
loadChildren:function(event, data){
var node = data.node;
$(node.children).each(function(){
if(this.selected && this.lazy)
{
this.load();
}
});
},
关于fancytree - 自动加载fancytree中的子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48177096/
如果我单击我的 fancytree 菜单节点,它们会激活出现在菜单旁边的对话框。这些具有使对话框关闭的取消按钮。但是,当我再次单击相同的菜单项(节点)时,不会再次出现相同的对话框(如我所愿),我认为是
如果我单击我的 fancytree 菜单节点,它们会激活出现在菜单旁边的对话框。这些具有使对话框关闭的取消按钮。但是,当我再次单击相同的菜单项(节点)时,不会再次出现相同的对话框(如我所愿),我认为是
有人已经尝试过了吗,我的意思是有人已经为此制作了第 3 方/扩展或补丁吗?ajax XHR 对象支持读取 XML 数据,但我想 Fancytree 需要一些更改或扩展来支持这种格式吗? 最佳答案 您可
我正在使用花式树查看器。 https://github.com/mar10/fancytree 如何根据事件动态改变节点的图标。 最佳答案 下面的代码将在延迟加载后遍历所有子节点,并更改子节点的图标(
嗨,我刚刚开始使用这个 jquery 树。并且想知道是否可以设置任何属性以使连接线始终可见。 最佳答案 在将连接线设置为始终可见的选项中没有可用的属性,但是您可以使用 fancytree-contai
我已经查看了 fancytree 的文档和示例几个小时,像海绵一样吸收了 fancytree 的所有优点,但我似乎不知道如何使用 API 调用首先使用文件夹对我的 fancytree 对象进行排序。我
我有一个 fancytree 实现,其中每个父节点都有一个可以选择的子节点。在用户选择了特定的 child 之后,她可以保存她的选择和设置,以便她以后可以回来使用。 除了我对以前保存的数据进行初始加载
我有一个包含不同选项的组合框,每个选项都会在屏幕上显示一个花式树。 我进行了 ajax 调用来获取 fancytree 的源代码,但它没有重新加载,并且一次又一次地显示相同的选项。 部分代码: $.a
我想知道是否有办法扩展 Fancytree 提供的导航,例如强制 delete , cut , copy或paste当我按 Delete 时,会发生 contextMenu 中的方法, ctrl+x
我正在使用fancytree在我的项目中,我想以编程方式触发节点的延迟加载,并且还想添加回调。我怎样才能做到这一点? 最佳答案 为了加载惰性节点,您可以调用 node.load() : node.lo
# this is reference picture # 我使用复杂表 $("#tree").fancytree({ checkbox: true, ....... source: { url: "
我有一个日记应用程序,其中有一个 fancytree,显示登录用户的日记条目。在该树下方,我有另一个 fancytree,上面有一个下拉列表,可让您选择其他用户并浏览他们的日记条目。一旦您选择了一个用
我有一个日记应用程序,其中有一个 fancytree,显示登录用户的日记条目。在该树下方,我有另一个 fancytree,上面有一个下拉列表,可让您选择其他用户并浏览他们的日记条目。一旦您选择了一个用
所以我有一个工作正常的 FancyTree。当用户移动到另一个页面时,我想保持树的状态。我正在点击此链接来实现这一目标; http://wwwendt.de/tech/fancytree/demo/s
我是 Jquery 的 Fancytree 插件的新手。 我想延迟加载树的节点。 我无法从不同来源加载这些节点。 两个节点都从同一单一源获取数据。我希望节点“Lazy Folder1”应该从 exam
我正在与 fancytree 合作。 如何在 JavaScript 中重新加载节点后打开节点(惰性)? 代码: node.load(forceReload = true); node.setExpan
https://github.com/mar10/fancytree 基本上,这棵树在展开/折叠时添加和删除子元素。除非伸展树(Splay Tree),否则我无法修改子项的 DOM 元素。 我在文档中
我正在尝试在拖放事件后为节点定义新的父 ID。 假设您将节点拖到除根以外的任何级别,此功能可以正常工作 dragDrop: function(node, data) {
我正在使用 FancyTree 插件来显示几个文件名。由于我有一个用于树插件的大型数据集,我想知道 API 是否支持树显示中的分页。我查看了 API 但找不到合适的东西。有什么办法可以解决吗? 最佳答
我想删除选定的节点并将所有子节点移动到它的位置。我使用代码: ref = $('#tree').fancytree("getTree"), searchIDs = ref.getSelectedNod
我是一名优秀的程序员,十分优秀!