現在の Web ページには、静的な jstree が表示されます。スクリプト (以下に表示) は、Spring モデルに追加されたデータを使用して、JSP ページと同じファイルにありました。
セットアップ#1
<div id="permissions" class="scroll"></div>
<script type="text/javascript" class="source">
$(function () {
$("#permissions").jstree({
"plugins" : [ "themes", "json_data", "checkbox", "sort", "ui" ],
"checkbox" : { "override_ui" : true },
"themes" : { "icons" : false },
"json_data" : { "data" : ${permissionTree} }
});
});
</script>
より動的に制御できるようにするために、スクリプトを JavaScript ファイルに移動し、さまざまな情報を表示できるようにしました。ただし、テスト目的で、以前とまったく同じデータを使用しています。
セットアップ #2
function getPermissions(str) {
$.getJSON("getPermissions.htm", {id : str},
function(data) {
$(function () {
$("#permissions").jstree({
"plugins" : [ "themes", "json_data", "checkbox", "sort", "ui" ],
"checkbox" : { "override_ui" : true },
"themes" : { "icons" : false },
"json_data" : { "data" : JSON.stringify(data) }
});
});
});
}
ただし、セットアップ #2 では、ツリーはツリーではなく生の JSON を表示します。どちらの場合もdata
同じであることを確認しました。それで、何が得られますか?なぜこのように機能しないのですか?