私はhtmlフォームに取り組んでおり、プロジェクトの要件に従って、選択と複数選択にdynatreeを使用しました。私がする必要があるのは、ユーザーがデータベースから入力されたすべてのフィールドを取得する編集フォームを作成することです。つまり、すでに選択されているフィールドを持つダイナツリーをユーザーに表示する必要があります。ここに私のコード例があります:
<span id="action" name="action">
<ul>
<li id="DisruptiveAction" class="folder expanded">DisruptiveAction (5)
<ul>
<li id="allow" title="optional">allow
<li id="deny" title="optional">deny
<li id="pass" title="optional" class="selected" >pass
<li id="block" title="optional">block
<li id="redirect" title="optional">redirect
</ul>
</ul>
</span>
Java スクリプト :
$("#action").dynatree({
classNames: {
container: "action-container",
checkbox: "dynatree-radio"
},
selectMode: 3,
onSelect: function(select, node) {
var selKeys = $.map(node.tree.getSelectedNodes(), function(node){
return node.data.key;
});
$("#selectedAction").val(selKeys.join(","));
var selRootNodes = node.tree.getSelectedNodes(true);
var selRootKeys = $.map(selRootNodes, function(node){
return node.data.key;
});
}
});
上記のhtmlでは、li要素でclass = "selected"を使用していますが、UIで選択済みとして表示されていません。前もって感謝します。