我可以点击按钮显示/创建jsTree吗?

时间:2011-08-19 06:00:59

标签: jquery jquery-plugins javascript-events jstree

我有一个div id="result",用于显示用户操作的结果。我也把纯文本和HTML放在那里。每次用户操作后,此div都会被新results覆盖。

现在我想在这个div中显示jsTree的一个实例我有工作的jsTree在页面加载时很好地加载但是在我的结果div中插入<div id="tree"></div>后它没有加载。

我在下面尝试了两行但没有一行。

 $("#tree").jstree("loaded");  
 $("#tree").jstree("refresh"); 

知道如何让jsTree在点击按钮后显示 吗?请在jsfiddle上播放,您可以在那里看到一棵树,我希望在点击按钮后显示另一棵树。我在树后面而不是文本。

我认为在将hstree div放入html后我需要重新加载或刷新树。

2 个答案:

答案 0 :(得分:2)

当你打电话给'$(“#tree2”)时,第一个地方没有创建tree2,因为<div id="tree2">不存在.jstree'。

因此,当您按下按钮时,第一棵树会正确刷新,但由于上述原因,未显示tree2。

按下按钮,你必须通过调用'$(“#tree2”)。jstree'来重新创建tree2,或者你可以在调用<div id="tree2">时隐藏$("#tree2").jstree。我刚刚更新了你的小提琴(http://jsfiddle.net/fmn6g/10/),所以你可以试试。

答案 1 :(得分:1)

要在Button Click上实现,只需执行以下操作:

<script type="text/javascript">
$(document).ready(function() {
$('#button-id').click(function() {
 $("#tree").jstree("loaded");  
 $("#tree").jstree("refresh"); 
});
});
</script>

请务必将button-id更改为按钮的实际id

希望这有帮助。