web-dev-qa-db-ja.com

jstreeはツリーから新しいjsonデータを取得します

以下のデータでツリーを作成しました。このプロセスの後、メニュー間でドラッグアンドドロッププロセスを行いました。その結果、メニュー構造が変更されました。最初のデータと同じ構造を持つ新しいJSONデータをエクスポートしたい。ツリーからデータを取得するにはどうすればよいですか?私を助けてください。

私はこのコードを試しましたが、これは非常に複雑なJSONをエクスポートします。最初のデータ形式が気に入らない。

var v = $('#data').jstree(true).get_json();
var mytext = JSON.stringify(v);
alert(mytext);

メニューの最初の状態:

enter image description here

メニューの最後の状態:

enter image description here

// html demo
$('#html').jstree();

// inline data demo



    $(function() {
            var arrayCollection = [
                {"id": "animal", "parent": "#", "text": "Animals"},
                {"id": "device", "parent": "#", "text": "Devices"},
                {"id": "dog", "parent": "animal", "text": "Dogs"},
                {"id": "lion", "parent": "animal", "text": "Lions"},
                {"id": "mobile", "parent": "device", "text": "Mobile Phones"},
                {"id": "lappy", "parent": "device", "text": "Laptops"},
                {"id": "daburman", "parent": "dog", "text": "Dabur Man", "icon": "/"},
                {"id": "Dalmation", "parent": "dog", "text": "Dalmatian", "icon": "/"},
                {"id": "african", "parent": "lion", "text": "African Lion", "icon": "/"},
                {"id": "indian", "parent": "lion", "text": "Indian Lion", "icon": "/"},
                {"id": "Apple", "parent": "mobile", "text": "Apple IPhone 6", "icon": "/"},
                {"id": "samsung", "parent": "mobile", "text": "Samsung Note II", "icon": "/"},
                {"id": "lenevo", "parent": "lappy", "text": "Lenevo", "icon": "/"},
                {"id": "hp", "parent": "lappy", "text": "HP", "icon": "/"}
            ];
$('#data').jstree({
    'core' : {
        'check_callback' : true,
        'data' :arrayCollection ,

    },


    "plugins" : ["dnd","wholerow"]
});


});//function
13
user3820266

ツリーからjsonを取得する最も簡単な方法を見つけました。

var v = $('#data').jstree(true).get_json('#', {flat:true})
var mytext = JSON.stringify(v);
alert(mytext);
35
user3820266