首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

EasyUI TreeGrid 刪除父節點同時刪除子節點

     編輯:程式設計綜合問答

功能需求

在 EasyUI TreeGrid 中刪除某父節點時,需連同其所有子節點一併移除,並判斷節點是否擁有子節點。

最簡單做法

直接呼叫 TreeGrid 的 remove 方法,框架內建會遞迴刪除子節點:

// 刪除 id 為 2 的節點及其所有子孫節點
$('#tg').treegrid('remove', 2);

API 說明

  • remove(id):移除指定節點及其所有子節點。
  • 若需先判斷是否有子節點,可用 $('#tg').treegrid('getChildren', nodeId) 取得子節點陣列,長度大於 0 即表示有子節點。

完整範例

var node = $('#tg').treegrid('getSelected');
if (node) {
    var children = $('#tg').treegrid('getChildren', node.id);
    if (children.length > 0) {
        $.messager.confirm('確認', '該節點包含子節點,確定全部刪除?', function(r) {
            if (r) $('#tg').treegrid('remove', node.id);
        });
    } else {
        $('#tg').treegrid('remove', node.id);
    }
}

善用內建方法,避免手動遞迴遍歷 DOM,減少錯誤並提升效能。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved