本人在使用 Easy UI 期間發(fā)現(xiàn)了一個不太適合項目的bug,可能也不算bug把 。 畢竟不同項目背景 取舍不同。
我在做網元樹選擇的時候 發(fā)現(xiàn)當選取父節(jié)點后,子節(jié)點都會被選擇 返回 。但是如果我們選中父節(jié)點后沒有必要選擇子節(jié)點。 故對源腳本作適當修改
下拉框樹修改 父節(jié)點選中后只顯示父節(jié)點 取消返回子節(jié)點
修改方法 找到樹的選擇函數(shù) 進行遍歷判斷
查找關鍵字 combotree multiple
大約行數(shù) 10564
function _7d5(_7d6) {var opts=$.data(_7d6,"combotree").options;var tree=$.data(_7d6,"combotree").tree;var vv=[],ss=[];if(opts.multiple){var _7d7 = tree.tree("getChecked");//獲得樹的選擇for (var i = 0; i < _7d7.length; i++) {// if (tree.tree('isLeaf', _7d7[i].target)) { //如果當前節(jié)點是葉子節(jié)點var pnode = tree.tree('getParent', _7d7[i].target); //獲取當前節(jié)點的父節(jié)點if (pnode) {var nopnode = true;for (var j = 0; j < i; j++) {//endfor遍歷循環(huán)是否存在父節(jié)點if (_7d7[j].id == pnode.id) { nopnode = false; }}if (nopnode == true) {//如果不存在父節(jié)點vv.push(_7d7[i].id);ss.push(_7d7[i].text);}}// } //end是葉子節(jié)點else {vv.push(_7d7[i].id);ss.push(_7d7[i].text);}//是根節(jié)點}//end for//該處為源代碼 //for(var i=0;i<_7d7.length;i++){//vv.push(_7d7[i].id);//ss.push(_7d7[i].text);//}//end for//end if} else {var node=tree.tree("getSelected");if(node){vv.push(node.id);ss.push(node.text);}}$(_7d6).combo("setValues",vv).combo("setText",ss.join(opts.separator));};以上這篇淺談EasyUi ComBotree樹修改 父節(jié)點選擇的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答