1

在 javascript 中,我正在尝试使用 igTree('select', node) 方法在 igTree 中设置焦点(选定)节点。当我使用从事件(例如更改)获得的节点时,此选择方法可以正常工作。

不过,在这种情况下,我尝试使用其中一种 igTree 方法来获取要传递给 igTree('select' ...) 的节点。

我可以看到我得到的节点对象是正确的。路径是“2_3”,是正确的。但是,选择抛出错误:

未捕获的类型错误:node.attr 不是函数

我正在使用 knockout.js 绑定来创建树。绑定有两层深,每一层的绑定结构是相同的。

使用最新版本的 IgniteUI 并使用 ui.igTree 对象。

Infragistics 的论坛似乎存在问题。

知道为什么这不起作用吗?

4

1 回答 1

0

select 方法接受一个 jQuery 元素作为参数。返回的节点对象nodeByIndex包含其中的元素,所以需要这样调用方法:

var node = $('#tree').igTree('nodeByIndex', index);
$('#tree').igTree('select', node.element);

如果您使用该nodeByPath方法,您将直接获得一个 jQuery 元素而不是节点对象。

var node = $('#tree').igTree('nodeByPath', "2_3");
$('#tree').igTree('select', node);
于 2015-09-07T07:49:45.653 回答