2017-04-20 12 views
1

私はobjectに値のリストを持っています。 jstreeの各ノードにボタンを追加する必要があります。jstreeのjstree内の各ノードのクリック可能なボタンをjspに追加します

マイコード:

これは単一値で動作するスタティックコードです。

$('#tree').jstree({ 
core:{ 
    data:[ 
     '<button>Press</button> One' 
    ] 
}, 
plugins:['checkbox'] 

});

しかし、私は各ノードにボタンを動的に追加したいと思います。

var arrayCollections = ${jsonArray}; 
$('#jstreesD').jstree({ 
    'core' : { 

      ], 
     'data' :[ arrayCollections,'<button>Press</button> Ok'], 

    }, 
}) 

<div id="jstreesD"></div> 

しかし、これは機能しません。 これを行う方法はありますか?

おかげで、 VJM

+0

'' jsonArray'、なぜあなたは '$(とそれを包むしようとしている)とは何ですか。とにかく配列の場合は、データを取得します:[["button"、 "button"]、 "button"] '。そして、私はあなたが 'データ' 必要があると考えている: " \t \t、 "100":[ 'ボタン'、 'ボタン'] – Leguest

+0

返信用HI Leguestおかげで、jsonArrayは、このVaRのArrayCollectionの= [{ \t \t "ID" のようなデータが含まれています親」: "#"、 \t \t "テキスト": "のMyData" \t}、 { \t \t \t "ID": "155"、 \t \t \t "親": "のMyData"、 \t \t \t "text": "テスト"、 \t \t}、 }); 私は各ノードにボタンを追加する必要があります – VJM

答えて

1

私はあなたがこれを試みることができると思う:

$(function() { 

     var data = [ { "id" : "100", "parent" : "#", "text" : "MyData" }, { "id" : "155", "parent" : "MyData", "text" : "Test", } ] 

     $('#jstree').jstree({ 
      'core' : { 
       'data' : data.map(function(item){ 

        return "<button>Press</button>" + item.text 
       }) 

      } 
     }); 
    }); 

JSFiddle Example

+0

しかし、このように私はjavascriptの例外 'Uncaught ReferenceError:データは定義されていません'を取得し、画面にはデータなしのボタンが1つしか表示されません。 – VJM

+0

私はそのエラーを解決しましたが、データは親IDに基づいてツリービュー形式を表示しません。ボタンで画面に単純なエントリとして直接表示します。 – VJM

+0

私は確信していません、私はあなたのデータを再構築する必要があると思う、jsTreeはparentIdのためにではなく、子供たちのために探します – Leguest

関連する問題