我正在尝试实现一个树视图,用户可以在其中添加子文件夹和文件。
我正在使用codeigniter和jquery,我可以看到树视图结构,但我不知道如何实现目录和文件创建(管理)功能。
例如,在国家1,柑橘子文件夹我想添加另一个文件夹,然后将文件添加到这个新文件夹。
![treeview] [1]
[查看]:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Files</title>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<style type="text/css">
ul { list-style: none;
padding-left: 20px;
cursor: pointer;
}
li {
padding-left: 20px;
margin:2px;
}
.folder { background:#eee url('../img/16x16/folder.png') no-repeat;
}
.file { background:#eee url('../img/16x16/file.png') no-repeat;}
</style>
</head>
<body>
<div id="files">
<?php //print_r($folders);?>
</div>
<div id="files-operation">
</div>
<script type="text/javascript">
$(document).ready(function() {
var files = <?php echo json_encode($folders); ?>;
var file_tree = build_file_tree(files);
file_tree.appendTo('#files');
function build_file_tree(files) {
var tree = $('<ul>');
for (x in files) {
if (typeof files[x] == "object") {
var span = $('<span>').html(x).appendTo(
$('<li>').appendTo(tree).addClass('folder')
);
var subtree = build_file_tree(files[x]).hide();
span.after(subtree);
span.click(function() {
$(this).parent().find('ul:first').toggle();
});
} else {
$('<li>').html(files[x]).appendTo(tree).addClass('file').click(function(){
window.location=$(this).find("a").attr("href");return false;})
}
}
return tree;
}
});
</script>
[控制器]:
function display()
{
$data['folders'] = directory_map('./vinefresh/');
$data['contenido'] = "index";
$this->load->view('plantilla',$data);
}
我的目标是能够制作子目录并动态添加文件,但如果我想在Citrus或任何其他子文件夹中创建子文件夹,我如何获得路径?
提前致谢