jsTree:如何获取以前选择的树节点ID?

时间:2010-06-04 07:04:23

标签: javascript jstree

我正在使用jsTree,我有2个文本框:

<input type="text" id="previous_tree_id" value="" /><hr />
<input type="text" id="current_tree_id" value="" />

在jsTree回调中我有:

$("#demo_1").tree({    
    callback : {
        onselect : function (NODE, TREE_OBJ) {
            var selected_tree_id = $(NODE).attr('id');
            $("#current_tree_id").val(selected_tree_id);
        }
    }
});

我的问题是

如何将之前选择的树项的ID放在previous_tree_id文本框中?我的树id只是数字,我有3个树项目。

树ID:1,2,3

因此,例如,如果有3个树项目,我首先选择第一个树项目,然后:

动作: - 选择树ID 1

输出: - textbox previous_tree_id = 1 - textbox current_tree_id = 1

然后我将选择树ID 2:

动作: - 选择树ID 2

输出: - textbox previous_tree_id = 1 - textbox current_tree_id = 2

然后我会选择树ID 3:

动作: - 选择树ID 3

输出: - 文本框previous_tree_id = 2 - textbox current_tree_id = 3

它只是一个我必须要解决的javascript逻辑,或者我缺少一些jsTree函数来获取引用/先前选择的树项?

提前致谢。 - 马克

1 个答案:

答案 0 :(得分:1)

问题解决了jojo的帮助。

$("#demo_1").tree({    
    callback : {
        onselect : function (NODE, TREE_OBJ) {
            var selected_tree_id = $(NODE).attr('id');

            // update first the previous_tree_id textbox
            $("#previous_tree_id").val(current);
            // store the new selected tree id in the current_tree_id
            $("#current_tree_id").val(selected_tree_id);
        }
    }
});