浅谈EasyUi ComBotree树修改 父节点选择的问题
本人在使用EasyUI期间发现了一个不太适合项目的bug,可能也不算bug把。毕竟不同项目背景取舍不同。
我在做网元树选择的时候 发现当选取父节点后,子节点都会被选择 返回 。但是如果我们选中父节点后没有必要选择子节点。故对源脚本作适当修改
下拉框树修改父节点选中后只显示父节点 取消返回子节点
修改方法找到树的选择函数进行遍历判断
查找关键字combotreemultiple
大约行数10564
function_7d5(_7d6){
varopts=$.data(_7d6,"combotree").options;
vartree=$.data(_7d6,"combotree").tree;
varvv=[],ss=[];
if(opts.multiple){
var_7d7=tree.tree("getChecked");//获得树的选择
for(vari=0;i<_7d7.length;i++){
//if(tree.tree('isLeaf',_7d7[i].target)){//如果当前节点是叶子节点
varpnode=tree.tree('getParent',_7d7[i].target);//获取当前节点的父节点
if(pnode){
varnopnode=true;
for(varj=0;j<i;j++){//endfor遍历循环是否存在父节点
if(_7d7[j].id==pnode.id){nopnode=false;}
}
if(nopnode==true){//如果不存在父节点
vv.push(_7d7[i].id);
ss.push(_7d7[i].text);
}
}
//}//end是叶子节点
else{
vv.push(_7d7[i].id);
ss.push(_7d7[i].text);
}//是根节点
}//endfor
//该处为源代码
//for(vari=0;i<_7d7.length;i++){
//vv.push(_7d7[i].id);
//ss.push(_7d7[i].text);
//}//endfor
//endif
}else{
varnode=tree.tree("getSelected");
if(node){
vv.push(node.id);
ss.push(node.text);
}
}
$(_7d6).combo("setValues",vv).combo("setText",ss.join(opts.separator));
};
以上这篇浅谈EasyUiComBotree树修改父节点选择的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。