3

jsTree で構築されたツリーでは、<a>タグ内のテキストが変数に格納されています。そのノードを確認したいと思います。どうすればそうできますか?

私は現在、jQueryを使用してそのノードを見つけ、そのクラスを変更しています。ただし、これは、親をそのクラスで不定にすることによって親ノードを修復しません。やってみ$('.colors').jstree("checkbox_repair")ましたが、どうにもなりませんでした。

これらの質問は同じ問題に関連しているため、誰かが実際に両方の質問に答えることができれば素晴らしいことです.

ここに問題を示すjsFiddleがあります-> http://jsfiddle.net/thapar/5XAjU/

4

4 に答える 4

5

js_tree には関数が.check_node ( node )あり.uncheck_node ( node )、これがあなたが求めているものだと思います。ドキュメントはこちら: http://www.jstree.com/documentation/checkbox

これは、上記のリンクのドキュメント「操作の実行方法」からの抜粋です。

/* METHOD ONE */
jQuery("some-selector-to-container-node-here")
    .jstree("operation_name" [, argument_1, argument_2, ...]);

/* METHOD TWO */
jQuery.jstree._reference(needle)
    /* NEEDLE can be a DOM node or selector for the container or a node within the container */
    .operation_name([ argument_1, argument_2, ...]);

したがって、この構文は機能するはずだと思います

$.jstree._reference(".colors").check_node('li#tree_3');

また、クラスを使用してツリーを参照する必要があるかどうかもわかりません。おそらく ID を使用してツリーを参照し、次の構文を使用します。

$.jstree._reference("#colors").check_node('li#tree_3');

//編集: jsTree の最新バージョンには _reference という関数がなくなっていることに注意してください。参照に名前が変更されました(先頭のアンダースコアなし)。(最終チェック日 2015 年 8 月 24 日 15:45、@mkli90) リンク: https://www.jstree.com/api/#/?f= $.jstree.reference(needle)

于 2012-04-07T12:05:34.490 に答える
5

たとえば、次のようにロード時に jsTree ノードをチェックする場合:

$(document).ready(function()
{
  $.jstree._reference('#menu').check_node('#pih2');
});

それは動作しません。私にとっては次のように機能します:

$(function () {
    $('#mainMenu1').bind('loaded.jstree', function(e, data){ //waiting for loading
          $.jstree._reference('#menu').check_node('#pih2');  //check node with id pih2
        $.jstree._reference('#menu').check_node('#pih6');  //check node with id pih6
  }); 
});

私は jsTree 1.0-rc3 と JQuery 1.7.1 を使用しています。アロエ

于 2012-12-30T19:08:00.137 に答える