我正在尝试通过使用click事件调用func来重新加载jstree treeview。它不会重新加载新数据。
var MenuTree = function (user) {
$.ajax({
type: "POST",
url: "Permission.aspx/Menu",
data: '{user: "' + user + '"}',
contentType: "application/json",
dataType: "json",
success: function (data) {
//$("#tree_menu").jstree('destroy');
var menujson = JSON.parse(data.d);
$('#tree_menu').jstree({
'plugins': ["wholerow", "checkbox", "types"],
"checkbox": {
"keep_selected_style": false,
"three_state": false
},
'core': {
"themes": {
"responsive": false
},
'data': menujson
}
});
},
error: function () {
console.log('err')
}
});
当我第一次调用MenuTree函数时,它会工作并重新加载,然后当我尝试再次调用它时它不会改变。
当我在$("#tree_menu").jstree('destroy');
之前使用$('#tree_menu').jstree()
时,除了deselect_node.jstree Event
和select_node.jstree Event
之外,它才有效。
如何使用新数据和事件重新加载jstree?
答案 0 :(得分:0)
如果我理解你的问题,你可以这样做,
.bind('any_event',function(e,data){
$(tree).jstree('refresh);
});
这将重新加载您的树。在任何事件(jstree或jquery)中编写代码,你就完成了!