jquery - 如何将jstree搜索改为ajax搜索

标签 jquery ajax jstree jstree-search

我正在尝试使用以下配置将 jstree 搜索转换为 ajax 搜索,我的问题是,即使它将“str”发送到 url 并且我收到 json ["#id"] 中的数据,例如,但 jstree 仍然进行正常搜索

// $.jstree.defaults.search.ajax = true;

$('#node_tree').jstree({
        'core' : {
        'data': fill_tree(),
    },
    "plugins": ["search", "state","themes"],
    'search': {
        'show_only_matches': true,
        'ajax': {
            'url': '/device/jstree',
            'dataType': 'json',
            'type': 'GET'
    }

我的 ajax 已经可以工作,我需要 jstree 来显示我的硬编码结果而不是默认搜索。

最佳答案

只是给有同样问题的人一个引用,即使 jstree 正确发送了 ajax 调用,它显示的是它自己的结果而不是我的结果,我找不到任何方法来改变它。 所以我只好返回一个全新的 JSON 数据并且:

$('#tree').jstree(true).settings.core.data = newJsonData;
$('#tree').jstree(true).refresh();

我知道这不是最好的选择,但它暂时起到了作用。

关于jquery - 如何将jstree搜索改为ajax搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34762336/

相关文章:

javascript - JSTree 添加新的父节点或子子节点

javascript - 专注于页面不工作

javascript - 输入字段中的默认文本

javascript - 通过 ajax 加载导航后重新初始化 Bootstrap 下拉菜单

javascript - 如何在 jstree 负载上打开选定(选中)的节点?

jquery - JSTree 拖放问题

jQuery 独特的元素

javascript - 如何在 AJAX 调用中添加 loading.. 消息?

javascript - 如何向动态创建的元素添加点击功能?

javascript - 将 $.get 包装在另一个延迟中