Codeigniter,在树视图中添加子文件夹和文件

时间:2014-05-05 00:07:33

标签: php jquery codeigniter treeview

我正在尝试实现一个树视图,用户可以在其中添加子文件夹和文件。

我正在使用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或任何其他子文件夹中创建子文件夹,我如何获得路径?

提前致谢

0 个答案:

没有答案