1

英語が下手で申し訳ありませんが、私のシステムはjavascriptツリーをKoolTreeViewからjsTreeに変更したいので、ドキュメントを読んで実装します。結果は次のようになります

食べ物

* Fish
* Beef
* Chicken

私のjavascriptとdivコード

<script class="source" type="text/javascript">
 $(function () {
  $("foodtree").jstree({
   "core" : { "initially_open" : [ "root" ] },
   "html_data" : {
     "ajax" : {
       "url" : "menu/menu/listfoodtree"
      }
   },
   "plugins" : [ "themes", "html_data" ]
  });
 });
</script>';

<div id="foodtree"></div>

「menu/menu / listfoodtree」のURLについて、プレーンHTMLを作成しました。

<li id="root"><span>Food</span>

<ul>
<li id="food14"><a href="menu/menu/listfish/1">Fish</a></li>
<li id="food13"><a href="menu/menu/listbeef/1/13">Beef</a></li>
<li id="food1"><a href="menu/menu/listchick/11">Chicken</a></li>
</ul>

</li>

結果は(jsTreeを使用して)正しく表示され、私の理想は、このように子ノードをロードするためにアイテムをクリックしたいです

# Food

    * Fish (href='/menu/menu/listfish/1')
      * Tuna
      * Salmon 
    * Beef
    * Chicken

これで、URL「/ menu / menu / listfish/1」がプレーンHTMLで作成されました。

<li id ='fish44'><span>Tuna</span></li>
<li id ='fish66'><span>Salmon</span></li>

しかし、それを実装する方法がわかりません。Fishをクリックして、URLから子ノードを表示します。何か提案やガイダンスをいただけますか?

4

1 に答える 1

4

nodeid をパラメータとして渡すツリーの見出しに ajax URL を指定します。そのノード ID を使用して、そのノードの新しい json を返す必要があります。ツリーはそれを子として選択したノードに追加します。

親ノードの状態は、json で "state":"open" として定義されている必要があります。そうしないと、ツリーはサーバーを呼び出しません。

ノードごとに異なる URL を指定することはできませんが、ツリーのメイン URL を指定して、データを取得したい URL にサーバー ページをリダイレクトすることはできます。

于 2010-11-16T18:28:57.250 に答える