我有一個樹形結構,其中所有樹節點都是父級和子文件夾。我想顯示用戶試圖展開的文件夾中的文件。因此,用戶用戶展開一個節點,它顯示了另一個div中父節點的子節點(子文件夾)和文件。始終觸發jstree事件
我正在使用「open_node.jstree」事件加載一些其他腳本。但是,如果節點沒有子節點,則「open_node.jstree」不會觸發。無論節點是否有子節點,如果節點擴展,我想觸發一個事件。
我的代碼如下
var dispJSTree = function() {
$("#treedisp").jstree({
'core': {
'data': {
"type": "POST",
"dataType": "json",
"contentType": "application/json;",
"url": "/xyz/example.asmx/GetJsFoldersTree",
"data": function (node) {
var nodeid = (node.id == "#") ? "" : node.id;
var originalSrc = node.original;
var moduleId = "";
if (typeof (originalSrc) === 'undefined' || originalSrc == null || originalSrc == "") {
nodeid = "";
}
else {
nodeid = (typeof (originalSrc.nodeid) === 'undefined' || originalSrc.nodeid == null || originalSrc.nodeid == "") ? "" : originalSrc.nodeid;
moduleId = (typeof (originalSrc.moduleId) === 'undefined' || originalSrc.moduleId == null || originalSrc.moduleId == "") ? "" : originalSrc.moduleId;
}
return JSON.stringify({ id: nodeid, moduleId: moduleId });
}
}
},
'plugins': ['contextmenu'],
'contextmenu': {
'items': customMenu
},
}).on('open_node.jstree', function (e, data) {
var folderId = data.node.original.id;
var moduleId = data.node.original.moduleId;
getFiles(folderId, moduleId, filesDispDiv);
});
}
我唯一擔心的是「open_node.jstree」觸發只有節點有子節點。否則它不會被觸發。如果節點被展開,我就可以觸發一個事件。
PL給出一個解決方案
如何顯示無子節點可以打開? –
我不需要顯示節點(不包含子節點的空節點),但是我需要觸發一個事件,該事件將觸發其他一些腳本來執行其他操作。 – Hemanth
你可以使用'select_node'事件嗎? –