jQuery樹組件 jstree使用

前言

jstree是一個(gè)比較好用的,可定制化支持較好的一個(gè)jQuery樹組件,最近項(xiàng)目里用到了它,但是發(fā)現(xiàn)網(wǎng)上的文檔以及使用方式并不適合當(dāng)前項(xiàng)目的實(shí)際開發(fā)顶燕,又或者是英文看起來(lái)比較復(fù)雜,因此對(duì)這次使用做出相關(guān)記錄冈爹,以備不時(shí)之需涌攻。

相關(guān)文檔
官網(wǎng)地址
github 地址

實(shí)例代碼

    /**
     * 構(gòu)建課程結(jié)構(gòu)樹
     */
    var jsTreeComponent = {
        init: function () {
            /*發(fā)起ajax請(qǐng)求*/
            $.getJSON('/你后臺(tái)獲取樹結(jié)構(gòu)的api'), function (data) {
                /*這一塊的邏輯根據(jù)自己的需求進(jìn)行處理*/
                if (data.success != true) {
                    $jsTree.html('加載失敗');
                    return;
                } else if (data.data.structureList.length == 0) {
                    $jsTree.html('暫無(wú)數(shù)據(jù)');
                    return;
                }
                var structList = data.data.structureList;

                /*以下是jstree所需對(duì)象的特定格式(如果是異步請(qǐng)求,那么是另外一種格式频伤,這里就不多介紹了)*/
                var jsTreeBean = {
                    id: "string", // 必要的參數(shù)
                    parent: "string", // 必要的參數(shù)
                    text: "string", // 節(jié)點(diǎn)名稱
                    icon: "glyphicon glyphicon-tag", // 圖標(biāo)恳谎,可使用自定義樣式
                    state: {
                        opened: true,  // 配置是否打開
                        disabled: false,  // 配置是否不可選中
                        selected: false  // 配置是否選中
                    },
                    li_attr: {},  // attributes for the generated LI node
                    a_attr: {}  // attributes for the generated A node
                };
                var jsTreeBeanList = [];

                /*根據(jù)后臺(tái)返回來(lái)構(gòu)建jsTreeBean對(duì)象,且填充到j(luò)sTreeBeanList數(shù)組*/
                for (var i = 0; i < structList.length; i++) {
                    var current = structList[i];
                    var newObj = Object.assign({}, jsTreeBean);

                    newObj.id = current.id;
                    newObj.text = current.name;
                    newObj.cusLevel = current.level;    //自定義的層級(jí)憋肖,0是章因痛,1是節(jié)
                    if (current.level == 0) {
                        newObj.icon = 'glyphicon glyphicon-bookmark';
                        newObj.parent = '#';
                    } else {
                        newObj.parent = current.parentId;
                    }

                    jsTreeBeanList.push(newObj);
                }

                /*核型配置類,用于使用構(gòu)建好的數(shù)組生成樹*/
                $jsTree.jstree({
                    'core': {
                        'check_callback': true,
                        'data': jsTreeBeanList
                    }
                });
            });
        },

        /*事件對(duì)象*/
        eventListener: function () {
            /*監(jiān)聽'改選'這個(gè)事件岸更,其他事件的監(jiān)聽參考官方文檔*/
            $jsTree.on("changed.jstree", function (e, data) {
                /*如果點(diǎn)擊的cusLevel是1(節(jié))婚肆,則獲取學(xué)習(xí)資源*/
                if (data.node.original.cusLevel == 1) {
                    service.loadLearnResources(data.node.id)
                }
            });
        }
    };
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市坐慰,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌用僧,老刑警劉巖结胀,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異责循,居然都是意外死亡糟港,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門院仿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)秸抚,“玉大人,你說(shuō)我怎么就攤上這事歹垫“溃” “怎么了?”我有些...
    開封第一講書人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵排惨,是天一觀的道長(zhǎng)吭敢。 經(jīng)常有香客問(wèn)我,道長(zhǎng)暮芭,這世上最難降的妖魔是什么鹿驼? 我笑而不...
    開封第一講書人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任欲低,我火速辦了婚禮,結(jié)果婚禮上畜晰,老公的妹妹穿的比我還像新娘砾莱。我一直安慰自己,他們只是感情好凄鼻,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開白布腊瑟。 她就那樣靜靜地躺著,像睡著了一般野宜。 火紅的嫁衣襯著肌膚如雪扫步。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,842評(píng)論 1 290
  • 那天匈子,我揣著相機(jī)與錄音河胎,去河邊找鬼。 笑死虎敦,一個(gè)胖子當(dāng)著我的面吹牛游岳,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播其徙,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼胚迫,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了唾那?” 一聲冷哼從身側(cè)響起访锻,我...
    開封第一講書人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎闹获,沒(méi)想到半個(gè)月后期犬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡避诽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年龟虎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片沙庐。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡鲤妥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出拱雏,到底是詐尸還是另有隱情棉安,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布铸抑,位于F島的核電站垂券,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜菇爪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一算芯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧凳宙,春花似錦熙揍、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至是尖,卻和暖如春意系,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背饺汹。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工蛔添, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人兜辞。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓迎瞧,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親逸吵。 傳聞我的和親對(duì)象是個(gè)殘疾皇子凶硅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • 前端開發(fā)面試題 面試題目: 根據(jù)你的等級(jí)和職位的變化,入門級(jí)到專家級(jí)扫皱,廣度和深度都會(huì)有所增加足绅。 題目類型: 理論知...
    怡寶丶閱讀 2,572評(píng)論 0 7
  • 一、樣式篇 第1章 初識(shí)jQuery (1)環(huán)境搭建 進(jìn)入官方網(wǎng)站獲取最新的版本 http://jquery.co...
    凜0_0閱讀 3,358評(píng)論 0 44
  • 今天是什么日子 起床:5:40 就寢:23:00 天氣:晴 心情:情緒低落 任務(wù)清單 昨日完成的任務(wù)韩脑,最重要的三件...
    桔子_e93c閱讀 125評(píng)論 0 0
  • 所以你看到了即便是一個(gè)腰纏萬(wàn)貫家里牛逼到不行的大公司的大少爺氢妈,也甚至不能解決他覺(jué)得有希望的問(wèn)題小的時(shí)候總喜歡什么時(shí)...
    無(wú)所用心人閱讀 402評(píng)論 0 19
  • 相親女要車要房外加彩禮20萬(wàn)衩匣,婚后不工作:婚姻何時(shí)起成了買賣? 01 如果你去相親粥航,女方提出這樣的結(jié)婚條件琅捏,你能接...
    靡音小丸子閱讀 2,005評(píng)論 9 11