2016-04-23 61 views
1

ツリー内の各ノードの属性を取得したいとします。オンラインで見た後、私はそれを行う方法を見つけたが、それは動作しません。エラーがATTR(「説明」)のラインで(ある:jstree JSONデータのノード属性を取得する方法

ここ
Uncaught TypeError: Cannot read property 'obj' of undefined 

は私のコードです:

jQuery(document).ready(function() { 
    var $ = jQuery; 
    $('#jstree').jstree({ 'core' : { 
    'data' : [ 
     {"id":"parent","parent":"#","text":"parent"}, 
     {"id":"cs","text":"Short Stay","parent":"parent","li_attr":{"label":"Short Stay","description":"example"}}, 
     {"id":"ls","text":"ls","parent":"parent"},{"id":"cs_1","text":"cs_1","parent":"cs"}, 
     {"id":"ls_1","text":"ls_1","parent":"ls"},{"id":"cs_1_1","text":"cs_1_1","parent":"cs_1"}, 
     {"id":"cs_1_1_1","text":"cs_1_1_1","parent":"cs_1_1"}, 
     {"id":"cs_1_1_2","text":"cs_1_1_2","parent":"cs_1_1"} 
    ] 
} }) 
.on("select_node.jstree", 
    function(evt, data){ 
      $('#data').html(data.rslt.obj.attr("description")); 
    } 
); 
    }); 
+0

あなたは属性値または属性名を意味しましたか? –

答えて

5

あなたが唯一の選択された要素のIDを取得し、その後の属性を取得する必要がありますその要素:ない要素のすべてがdescription属性を持つ

$(function() { 
    $('#jstree').jstree({ 'core' : { 
    'data' : [ 
     {"id":"parent","parent":"#","text":"parent"}, 
     {"id":"cs","text":"Short Stay","parent":"parent","li_attr":{"label":"Short Stay","description":"example"}}, 
     {"id":"ls","text":"ls","parent":"parent"},{"id":"cs_1","text":"cs_1","parent":"cs"}, 
     {"id":"ls_1","text":"ls_1","parent":"ls"},{"id":"cs_1_1","text":"cs_1_1","parent":"cs_1"}, 
     {"id":"cs_1_1_1","text":"cs_1_1_1","parent":"cs_1_1"}, 
     {"id":"cs_1_1_2","text":"cs_1_1_2","parent":"cs_1_1"} 
    ] 
} }).on("select_node.jstree", 
    function(evt, data){ 
      var node_id = (data.node.id); // element id 
      var description = $("#"+node_id).attr("description"); // get value of element attribute 
      $('#data').html(description); 
    } 
); 
}); 

関連する問題