layui tree 樹狀圖獲取複選框選中節點的id列表集合,只有ID列 沒有嵌套

官方文檔提供的代碼只能獲取到根節點的id,沒有進行樹遍歷,無法獲取到子樹的id.

 

tree.render({
  elem: '#test'
  ,data: [] //數據源
  ,id: 'demoId' //定義索引
});
 
//獲得選中的節點
var checkData = tree.getChecked('demoId');

這個獲取的是嵌套的,但業務往往是需要一個複選框集合

需要自己寫一個方法迭代翻出來

var treecheckdata  = tree.getChecked('demoId');
var nodeIds = new Array();
nodeIds = getCheckedId(treecheckdata);
// 測試
var permList = nodeIds;
console.log("permList:"+permList);

// 獲取選中節點的id
function getCheckedId(jsonObj) {
    var id = "";
    $.each(jsonObj, function (index, item) {
        if (id != "") {
            id = id + "," + item.id;
        }
        else {
            id = item.id;
        }
        var i = getCheckedId(item.children);
        if (i != "") {
            id = id + "," + i;
        }
    });
    return id;
}

在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章