2

私は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 を使用しており、out 変数を次のように設定しています。

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

問題は、アラート メッセージが表示されないため、クリック イベントが発生していないように見えることです。

私のやり方でエラーを教えてください。

ありがとうトニー

4

2 に答える 2

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);
   }
 });

1 つ必要だったのは、プラグイン UI の追加です。

于 2013-10-01T15:20:39.280 に答える