Tôi đang sử dụng jstree và tôi muốn xóa một nút cụ thể theo ID của nó sau khi nhấp vào nút.Xóa nút theo ID trong jstree khi nhấn nút
Đây là cây của tôi trong danh sách định dạng 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>
và đây là sự kiện nút của tôi (Tôi đã có một vài nút, vì thế mà mảng):
buttons[0].addEventListener("click", function(ev) {
$("#testtree").jstree("remove", $("111"));
});
Bất kỳ ý tưởng những gì tôi 'M mất tích?
Cập nhật:
tôi đã sửa lỗi đánh máy nhưng nó vẫn không hoạt động. Đây là mã hoàn chỉnh, có thể sai lầm ở đâu đó khác?
<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>
Trong jQuery bạn có thể viết:. '$ ("# Testtree # 111") remove();' –
đó làm việc, nhưng tôi cần để có thể tải lại cây sau này không có nút bị thiếu. – atreju