我正在使用jstree并且我想通过点击按钮后按ID删除特定节点。单击按钮时,按jstree中的ID删除节点
这是我在HTML列表格式树:
<div id="testtree">
<ul>
<li id="1" title="ID:1"><a>Fruits and Vegetables</a>
<ul>
<li id="11" title="ID:11"><a>Fruit</a>
<ul>
<li id="111" title="ID:111"><a>Apple</a></li>
<li id="112" title="ID:112"><a>Banana</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
,这是我的按钮事件(我有几个按钮,因此阵列):
buttons[0].addEventListener("click", function(ev) {
$("#testtree").jstree("remove", $("111"));
});
任何想法我错过了?
更新:
我已经纠正错字,但它仍然无法正常工作。这是完整的代码,也许错误是在别的地方?
<html>
<head>
<title>jstree test</title>
</head>
<body>
<div id="testtree">
<ul>
<li id="1" title="ID:1"><a>Fruits and Vegetables</a>
<ul>
<li id="11" title="ID:11"><a>Fruit</a>
<ul>
<li id="111" title="ID:111"><a>Apple</a></li>
<li id="112" title="ID:112"><a>Banana</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<button>Remove Apple</button>
<script type="text/javascript" src="_lib/jquery.js"></script>
<script type="text/javascript" src="jquery.jstree.js"></script>
<script>
$(document).ready(function() {
$("#testtree").jstree({
"plugins" : [ "themes", "html_data", "checkbox", "ui" ],
"core": { "initially_open": ["1"]}
});
});
var buttons = document.querySelectorAll("button");
buttons[0].addEventListener("click", function(ev) {
$("#testtree").jstree("remove","#111");
});
</script>
</body>
</html>
在jQuery中,你可以写:'$( “#testtree#111”),删除();' –
这样的作品,但我需要能够稍后重新加载树没有缺失节点。 – atreju