2

選択したチェックボックスをjsTreeのajaxリクエストで更新する方法はありますか?

これを行う方法、チェックボックスのクリックまたはクリック解除時にイベントまたはcalback関数を呼び出す方法についてのアイデアが見つかりません。

また、ページの読み込み時に選択した値でチェックボックスツリーを更新する方法についてのアイデアが見つかりません。

あなたの答えをありがとう:)

4

1 に答える 1

6

データソースからJSON_DATAをロードするときに、ajaxの有無にかかわらずチェックボックスを設定するには、そのノードのオブジェクトに追加"class": "jstree-checked"するだけです。"attr"これは、データがロードされるときに<li>要素に追加され、ボックスがオンになります。

チェックボックスのチェック/チェック解除でイベントをキャプチャするには、「check_node」または「uncheck_node」イベントにバインドするだけです。

$("#mytree").jstree(...).bind('check_node.jstree', function(e, data) {
    alert('box checked');
}

jstree Webサイトにあるバージョン1.0rc2を使用している場合は、プロジェクトページから最新の開発バージョンをダウンロードします:http ://code.google.com/p/jstree/source/list

私はここ数日jstreeをいじくり回していて(これらの同じ問題の多くを理解しようとしています)、「check_node」イベントは1.0rc2では間違いなく機能しません。

また、「cookies」プラグインと組み合わせると、「jstree-checked」クラスにいくつかの奇妙な問題があるように見えました。さらに、cookiesプラグインがチェックボックスプラグインの前に追加されたか後に追加されたかによって動作が異なるため、さらに複雑になりました。ただし、最新の開発バージョンではすべてが正常に機能しているようです。

于 2010-10-20T14:05:39.233 に答える