我是jsTree的新手,我遇到了一个非常简单的例子。
我的HTML:
<ul id='categories'>
<li><a href"/Browse/1">Category 1</a>
<ul>
<li><a href="/Browse/3">Subcategory 1.1</a></li>
</ul>
</li>
<li><a href="/Browse/2">Category 2</a>
<ul>
<li><a href="/Browse/4">Subcategory 2.1</a></li>
</ul>
</li>
</ul>
代码:
<script type='text/javascript'>
$(document).ready(function() {
$('#categories').jstree({ 'plugins' : 'html_data' });
});
</script>
错误:
Line: 1694
Error: Exception thrown and not caught
似乎jsTree试图调用我没有安装的cookie插件。
在我的情况下,我不需要或不需要cookie。
如何在没有它们的情况下运行jsTree?
更新:
我试过这个加上各种插件组合:
<script type='text/javascript'>
$(document).ready(function() {
$.jstree.defaults.plugins = ['ui', 'crrm', 'themes', 'html_data'];
$('#categories').jstree();
});
</script>
结果现在是一个空白页面。但错误消失了。
谢谢,
瑞克
答案 0 :(得分:3)
如果您查看第1755行,默认情况下会使用Cookie插件:
// include cookies by default
$.jstree.defaults.plugins.push("cookies");
要删除它,您的选项必须是一个数组,因此它会覆盖而不是添加到默认值,如下所示:
$('#categories').jstree({ 'plugins' : ['ui', 'crrm', 'themes', 'html_data'] });
这包括默认添加的其他内容,只需删除您不想要的任何内容。
此结构需要对html_data
进行一些更改才能正常工作,如下所示:
<div id="categories">
<ul>
<li><a href="#">Category 1</a></li>
<li><a href="#">Category 2</a></li>
</ul>
</div>
请注意添加父元素和锚点。 You can give it a try here。
答案 1 :(得分:-1)
:)刚遇到同样的问题,解决方案很简单: 不要使用