Ich benutze jstree und ich möchte einen bestimmten Knoten durch seine ID nach einem Klick auf eine Schaltfläche löschen.Knoten nach ID in jstree entfernen, wenn auf geklickt wird
Dies ist mein Baum in html Listenformat:
<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>
und dies ist meine Schaltfläche Ereignis (Ich habe mehrere Tasten bekommt, damit das Array):
buttons[0].addEventListener("click", function(ev) {
$("#testtree").jstree("remove", $("111"));
});
Alle Ideen, was ich fehlt?
Update:
Ich habe den Tippfehler korrigiert, aber es funktioniert immer noch nicht. Hier ist der vollständige Code, vielleicht ist der Fehler woanders?
<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>
In jQuery Sie schreiben können. '$ ("# Testtree # 111") entfernen();' –
das funktioniert, aber ich brauche den Baum zu können, später neu geladen werden ohne fehlende Knoten. – atreju