2013-09-26 25 views
2

我使用jstree,並想以我自己的單擊事件綁定到每個節點....JSTree結合我自己的點擊事件

這就是我想....

 $("#demo1").jstree({ 
    "core": { "initially_open": ["root"] }, 
    "html_data": { 
    "data": out 
    }, 
    "plugins": ["themes", "html_data"] 
}).bind("select_node.jstree", 
function (e, data) 
{ 
    alert(data.rslt.obj.data("id"));  }); 

我現在用的是HTML_Plugin,設置了可變看起來像這樣

"<li id='root'><a href='#'>Root node</a><ul><li><a href='#'>Child node</a></li></ul></li>" 

麻煩的是,點擊事件似乎並沒有被解僱,因爲我沒有看到警報消息。

請以我的方式向我展示錯誤。

感謝 託尼

+0

爲什麼downvote? – pithhelmet

回答

0
$("#demo1").jstree({ 
    "core": { "initially_open": ["root"] }, 
    "html_data": { 
    "data": out 
    }, 
    "plugins": ["themes", "html_data", "ui"] 
}).bind("select_node.jstree", function (e, data) { 
    var id = data.rslt.obj.attr("id"); 
    var parent = data.inst._get_parent(data.rslt.obj); 
    if (parent == -1) { 
    alert(id); 
    } else { 
    alert(parent.find('a').first().text() + "|" + id); 
    } 
}); 

一件事......除了插在UI

0

從代碼中刪除以下屬性和嘗試,out變量會給你「了沒有定義的錯誤。」需要

  "html_data": { 
      "data": out 
      }, 
+0

這篇文章質量很低,在當前的形式中並沒有多大意義。請以適當的格式和說明進行更新。 – NDM

+0

謝謝!我也會這樣做。 – Anoop