igTree调用igTree('select',x)来设置焦点。通过igTree('nodeByIndex'...)获得的节点x出错

时间:2015-09-02 19:18:18

标签: jquery knockout.js infragistics ignite-ui igtree

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

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

我可以看到我得到的节点对象是正确的。路径为“2_3”,这是正确的。但是,select会抛出一个错误:

未捕获的TypeError:node.attr不是函数

我正在使用knockout.js绑定来创建树。绑定深度为两级,每个级别的绑定结构相同。

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

Infragistics似乎在他们的论坛上遇到了问题。

知道为什么这不起作用?

1 个答案:

答案 0 :(得分: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);