layui.tree樹形結構節點判定條件的刪除操作

億起科技_月落烏啼霜滿天發表於2020-05-18

最近使用layui.tree,實在是讓我頭疼,先說問題,再說解決
首先,tree支援操作圖示操作節點,但是不能增加圖示只能用他自己本身的三個,增加,改名字,還有刪除這三個。但是這三個也極其不好用,而且我發現tree的刪除節點操作沒辦法條件判斷,也就是說你點了確定以後頁面的dome結構他直接給你刪了
不得不說最近使用layui著實遇到了太多問題,但是沒辦法,還得用啊

說一下我的解決辦法
在這裡插入圖片描述tree有一個click屬性,能夠執行匿名函式並且返回當前節點的資料,
關鍵的來了,畫橫線的部分就是主要程式碼,作用就是你點選該節點以後把該節點的資料給儲存到一個全域性變數nowNode中了,那麼現在你就可以再進行條件判斷了,比如我的,我自己定義了一個刪除按鈕,賦予點選事件,程式碼如下

/*
        /刪除節點
        */
         $("#delNode").click(function(){
         layer.close(box);
         if(nowNode.children.length > 0){
         layer.alert('該節點下有子節點,不可刪除', {icon:2, title:'失敗提示', closeBtn:0, anim:6});
         return false;
         }

         //詢問框
         var index = layer.confirm('確定要刪除' + nowNode.name + '?', {
         icon: 3,
         title: '友情提示',
         btn: ['確定','取消'] //按鈕
         }, function(){
             $.ajax({
                 url:"{:url('Node/nodeDel')}?id="+nowNode.id
                 ,method:'get'
                 ,success:function(e){
                     layer.msg(e.msg);
                     gettree();
                 }
                                        })
         }, function(){

         });
         });

此時就可以用nownode進行各種條件判斷了,我的就是判斷他是否有子節點,有的話不可刪除,沒有的話呢才可以刪除。
大家不要用節點圖示操作方法,太坑了
直接用這種判定就好啦!
以上就是我的一些小心得。
如果幫助到了你記得點贊評論二連哦

相關文章