Javascript onCollapse将父节点设置为所选节点(如果已选择子节点/孙子节点)(引导树视图)
我有工作引导树视图。我想在这里添加一个功能 (使用插件) 例如:onNodeCollapsed:如果已选择折叠节点的子节点/孙子节点。然后,当前collpased节点应显示为选定节点 然后在同一节点上展开。它应该显示其/上次选择的节点或子/孙节点Javascript onCollapse将父节点设置为所选节点(如果已选择子节点/孙子节点)(引导树视图),javascript,jquery,twitter-bootstrap,css,treeview,Javascript,Jquery,Twitter Bootstrap,Css,Treeview,我有工作引导树视图。我想在这里添加一个功能 (使用插件) 例如:onNodeCollapsed:如果已选择折叠节点的子节点/孙子节点。然后,当前collpased节点应显示为选定节点 然后在同一节点上展开。它应该显示其/上次选择的节点或子/孙节点 onNodeCollapsed: function(event, node) { $.each(node.nodes, function() { if (this.state.selected) { $('#tre
onNodeCollapsed: function(event, node) {
$.each(node.nodes, function() {
if (this.state.selected) {
$('#treeview-selectable').treeview('selectNode', [node.nodeId, {
silent: true
}]);
return;
}
});
}
使用这个
变量slectedNodeId,hasSelect=false,nodeIdList=[]
三个全局变量,然后按照下面的代码操作。希望这对你有帮助
onNodeExpanded:function(event, node){
$.each(node.nodes, function(){
if((this.nodeId==slectedNodeId || nodeIdList.indexOf(this.nodeId)>-1)
&& hasSelect)
{
$('#treeview-selectable').treeview('selectNode',
[ this.nodeId, { silent: true } ]);
}
});
},
onNodeCollapsed:function(event, node){
nodeIdList.push(node.nodeId);
$.each(node.nodes, function(){
if(this.state.selected){
$('#treeview-selectable').treeview('selectNode',
[nodeIdList[0], { silent: true } ]);
hasSelect=true;
}
});
},
onNodeSelected: function (event, node) {
slectedNodeId=node.nodeId;
nodeIdList=[];
hasSelect=false;
$(this).treeview('unselectNode', [ node.nodeId, { silent: false } ]);
},
onNodeUnselected: function (event, node) {
$(this).treeview('selectNode', [ node.nodeId, { silent: true } ]);
}
更新小提琴: