0
안녕하세요 만 선택한 폴더까지 트리를 열 필요, 즉 이미지 I에 예를 들어 선택한 디렉토리선택한 디렉토리의 하위 폴더를 열 수 없습니다 - jstree를
의 하위 폴더를 열지 않고 말을하는 것입니다 모두 파일 "TEST3"enter image description here
<script>
$(function() {
$('#tree')
.jstree({
'core' : {
'data' : {
'url' : '<?php echo URL::base(); ?>/tree?operation=get_node',
'data' : function (node) {
console.log(node.id);
return { 'id' : node.id.replace("\/","/") };
}
},
'check_callback' : function(o, n, p, i, m) {
if(m && m.dnd && m.pos !== 'i') { return false; }
if(o === "move_node" || o === "copy_node") {
if(this.get_node(n).parent === this.get_node(p).id) { return false; }
}
return true;
},
'force_text' : true,
'themes' : {
'responsive' : false,
'variant' : 'small',
'stripes' : true
}
},
'sort' : function(a, b) {
return this.get_type(a) === this.get_type(b) ? (this.get_text(a) > this.get_text(b) ? 1 : -1) : (this.get_type(a) >= this.get_type(b) ? 1 : -1);
},
'contextmenu' : {
'items' : function(node) {
var tmp = $.jstree.defaults.contextmenu.items();
delete tmp.create.action;
tmp.create.label = "New";
tmp.create.submenu = {
"create_folder" : {
"separator_after" : true,
"label" : "Folder",
"action" : function (data) {
var inst = $.jstree.reference(data.reference),
obj = inst.get_node(data.reference);
inst.create_node(obj, { type : "default" }, "last", function (new_node) {
setTimeout(function() { inst.edit(new_node); },0);
});
}
},
"create_file" : {
"label" : "File",
"action" : function (data) {
var inst = $.jstree.reference(data.reference),
obj = inst.get_node(data.reference);
inst.create_node(obj, { type : "file" }, "last", function (new_node) {
setTimeout(function() { inst.edit(new_node); },0);
});
}
}
};
if(this.get_type(node) === "file") {
delete tmp.create;
}
return tmp;
}
},
'types' : {
'default' : { 'icon' : 'folder' },
'file' : { 'valid_children' : [], 'icon' : 'file' }
},
'unique' : {
'duplicate' : function (name, counter) {
return name + ' ' + counter;
}
},
'plugins' : ['state','dnd','sort','types','contextmenu','unique']
})
/*********************************/
.on('open_node.jstree', function (e, data) {
console.log("sdfsfdsdfs");
})
/*********************************/
.on('delete_node.jstree', function (e, data) {
$.get('<?php echo URL::base(); ?>/tree?operation=delete_node', { 'id' : data.node.id })
.fail(function() {
data.instance.refresh();
});
})
.on('create_node.jstree', function (e, data) {
$.get('<?php echo URL::base(); ?>/tree?operation=create_node', { 'type' : data.node.type, 'id' : data.node.parent, 'text' : data.node.text })
.done(function (d) {
data.instance.set_id(data.node, d.id);
})
.fail(function() {
data.instance.refresh();
});
})
.on('rename_node.jstree', function (e, data) {
$.get('<?php echo URL::base(); ?>/tree?operation=rename_node', { 'id' : data.node.id, 'text' : data.text })
.done(function (d) {
data.instance.set_id(data.node, d.id);
})
.fail(function() {
data.instance.refresh();
});
})
.on('move_node.jstree', function (e, data) {
$.get('<?php echo URL::base(); ?>/tree?operation=move_node', { 'id' : data.node.id, 'parent' : data.parent })
.done(function (d) {
//data.instance.load_node(data.parent);
data.instance.refresh();
})
.fail(function() {
data.instance.refresh();
});
})
.on('copy_node.jstree', function (e, data) {
$.get('<?php echo URL::base(); ?>/tree?operation=copy_node', { 'id' : data.original.id, 'parent' : data.parent })
.done(function (d) {
//data.instance.load_node(data.parent);
data.instance.refresh();
})
.fail(function() {
data.instance.refresh();
});
})
});
</script>
을 열고 싶지 않아 지금까지 시도한 코드를 추가하십시오. – Connum
기본 기능인 jstree "{"- ".on ('open_node.jstree', function"- ".on ('delete_node.jstree', function"- ".on ('copy_node.jstree' , 기능 "... – user3609955
다시 :이 질문과 관련된 부분으로 단순화 된 마크 업과 스크립트를 제공해주십시오. – Connum