我正在使用jQuery FileTree。通过 javascript ajax(旧式 javascript xmlhttp 请求,而不是 jQuery)上传文件后,我使用以下代码调用 fileTree:
$('#jstree').fileTree({
script: '/ajax/file_tree2/' + path,
multiFolder: true,
expandSpeed: 250,
collapseSpeed: 250
});
...它生成了一个漂亮的图形文件树,我可以在其中单击(path
变量是新文件夹,用作 URI 段变量,我只是将服务器端连接器 jQueryFileTree.php 代码复制到公共CodeIgniter 控制器类中的函数。这是我认为与问题无关的额外信息,仅供参考)。
但是,由于某种原因,当我通过上传新文件(无需重新加载页面)进行第二次调用时,文件树不会更新或刷新。当我为不同的文件夹上传新文件时,我想刷新树结构。
我尝试使用加载器 gif 清除 #jstree 元素本身:
$('#jstree').html('<img src=\"'+$("#base_url").html()+'/assets_/images/loading/loading36.gif\" />');
...甚至只是清除 html:
$('#jstree').html('');
我尝试过属于其他小部件类型库的命令,例如“销毁”或“刷新”:
$('#jstree').fileTree.destroy();
$('#jstree').fileTree({
refresh: true,
script: '/ajax/file_tree2/' + path,
multiFolder: true,
expandSpeed: 250,
collapseSpeed: 250
});
这些要么什么都不做,要么返回一个 js 错误。