这个例子的例子给大家分享具体的代码实现自助TreeView梯级选择,供你参考,以下具体内容

核心方法


无功nodecheckedsilent = false;
功能nodechecked(事件、节点){
如果(nodecheckedsilent){
返回;
}
nodecheckedsilent =真;
checkallparent(节点);
CheckAllSon(节点);
nodecheckedsilent = false;
}

无功nodeuncheckedsilent = false;
功能nodeunchecked(事件、节点){
如果(nodeuncheckedsilent)
返回;
nodeuncheckedsilent =真;
uncheckallparent(节点);
UncheckAllSon(节点);
nodeuncheckedsilent = false;
}

选择所有父节点
功能checkallparent(节点){
$(#树),Treeview('checknode ',node.nodeid,{沉默:真});
VaR(# parentNode =美元树),Treeview('getparent节点。节点ID);
如果(!(NodeID在parentNode)){
返回;
其他{ }
checkallparent(parentNode);
}
}
取消所有父/母节点
功能uncheckallparent(节点){
$(#树),Treeview('unchecknode ',node.nodeid,{沉默:真});
VaR的兄弟姐妹=(#美元树),Treeview('getsiblings节点。节点ID);
VaR(# parentNode =美元树),Treeview('getparent节点。节点ID);
如果(!(NodeID在parentNode)){
返回;
}
无功isallunchecked = true; / /如果所有选择
对于(在兄弟姐妹中的var i){
如果(兄弟姐妹{ },国家。检查){
isallunchecked = false;
打破;
}
}
如果(isallunchecked){
uncheckallparent(parentNode);
}

}

选择所有子节点
功能checkallson(节点){
$(#树),Treeview('checknode ',node.nodeid,{沉默:真});
如果(node.nodes!= nullnode。节点。长> 0){
对于(节点中的var i){
CheckAllSon(节点。节点{我});
}
}
}
取消/级联所有子节点
Function uncheckAllSon (node) {
$(#树),Treeview('unchecknode ',node.nodeid,{沉默:真});
如果(node.nodes!= nullnode。节点。长> 0){
对于(节点中的var i){
UncheckAllSon(节点。节点{我});
}
}
}



6:有网友反馈后,如果((ID在perentnode))在地图需要改变如果(NodeID在perentnode)正常运行。我想应该是版本问题。以上代码已更正,如果不起作用,请改为!(我在perentnode))和尝试。(谢谢你提出)

因为在这寂静的属性指定了无效的(我不知道为什么它是承诺),所以两变量添加到控制




$(#树)。Treeview({
showcheckbox:真,
数据:树形数据,
onnodechecked:nodechecked,
onnodeunchecked:nodeunchecked
});



设计素描 uff1a


以上是本文的全部内容,希望能对您有所帮助,希望大家多多支持。