Javascript dynatree js显示最初扩展的树

Javascript dynatree js显示最初扩展的树,javascript,tree,salesforce,visualforce,Javascript,Tree,Salesforce,Visualforce,我已经用dynatree.js创建了一个js树。我有很长的等级制度。树在加载时显示为展开。我希望树应该扩展到一个级别。下面是我的代码 <apex:component controller="TreeViewController"> <apex:attribute name="roleOrUserId" required="true" type="String" assignTo="{!roleOrUserId}" description="Enter Role or U

我已经用dynatree.js创建了一个js树。我有很长的等级制度。树在加载时显示为展开。我希望树应该扩展到一个级别。下面是我的代码

<apex:component controller="TreeViewController">
    <apex:attribute name="roleOrUserId" required="true" type="String" assignTo="{!roleOrUserId}" description="Enter Role or User Id to build the hierarchy. Pass null if you are passing JSON data as a parameter" />
    <apex:attribute name="selectable" type="Boolean" assignTo="{!selectable}" description="Do you want nodes to be selectable?" />
    <apex:attribute name="value" type="String" description="IDs of selected Nodes in CSV format" />
    <apex:attribute name="JsonData" type="String" assignTo="{!JsonData}" description="JSON input for the tree component" />
    <apex:inputHidden id="selectedKeys" value="{!value}" />
    <!--<apex:includeScript value="{!URLFOR($Resource.DynaTree, 'jquery/jquery.js' )}" /> -->
    <apex:includescript value="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.js"/>
    <apex:includeScript value="{!URLFOR($Resource.DynaTree, 'jquery/jquery-ui.custom.js' )}" />
    <apex:includeScript value="{!URLFOR($Resource.DynaTree, 'jquery/jquery.cookie.js' )}" />
    <apex:includeScript value="{!URLFOR($Resource.DynaTree, 'src/jquery.dynatree.js' )}" />
    <!--<apex:includeScript value="{!$Resource.DynaTreeJs}" /> -->

    <apex:stylesheet value="{!URLFOR($Resource.DynaTree, 'src/skin/ui.dynatree.css')}" />

    <!-- Add code to initialize the tree when the document is loaded: -->
    <script type="text/javascript">
    $.noConflict();
    $(document).ready(function() {
        $(function(){
            // Attach the dynatree widget to an existing <div id="tree"> element
            // and pass the tree options as an argument to the dynatree() function:
            $("#tree").dynatree({
                onActivate: function(node) {
                    // A DynaTreeNode object is passed to the activation handler
                    // Note: we also get this event, if persistence is on, and the page is reloaded.
                    //alert("You activated " + node.data.key);
                },
                persist: false,
                checkbox: true,
                generateIds: false,
                classNames: {
                    checkbox: "dynatree-checkbox",
                    expanded: "dynatree-expanded"
                },
                selectMode: 3,
                children: {!JsonString},
                onSelect: function(select, node) {
                    // Get a list of all selected nodes, and convert to a key array:
                    var selKeys = $.map(node.tree.getSelectedNodes(), function(node){
                        return node.data.key;
                    });
                    jQuery(document.getElementById("{!$Component.selectedKeys}")).val(selKeys.join(", "));

                    // Get a list of all selected TOP nodes
                    var selRootNodes = node.tree.getSelectedNodes(true);
                    // ... and convert to a key array:
                    var selRootKeys = $.map(selRootNodes, function(node){
                        return node.data.key;
                    });
                },

            });

        });

    });
    </script>

    <!-- Add a <div> element where the tree should appear: -->
    <div id="tree"> </div>

</apex:component>

$.noConflict();
$(文档).ready(函数(){
$(函数(){
//将dynatree小部件附加到现有元素
//并将树选项作为参数传递给dynatree()函数:
$(“#树”).动态树({
onActivate:函数(节点){
//DynaTreeNode对象被传递给激活处理程序
//注意:如果启用了持久性,并且页面被重新加载,我们也会得到这个事件。
//警报(“您已激活”+node.data.key);
},
坚持:错,
复选框:正确,
代代斯:错,
类名:{
复选框:“动态树复选框”,
展开:“动态树展开”
},
选择模式:3,
子项:{!JsonString},
onSelect:功能(选择,节点){
//获取所有选定节点的列表,并转换为键数组:
var selKeys=$.map(node.tree.getSelectedNodes(),函数(node){
返回node.data.key;
});
jQuery(document.getElementById(“{!$Component.selectedKeys}”).val(selKeys.join(“,”);
//获取所有选定顶部节点的列表
var selRootNodes=node.tree.getSelectedNodes(true);
//…并转换为密钥数组:
var selRootKeys=$.map(selRootNodes,函数(节点){
返回node.data.key;
});
},
});
});
});
输出
所有子节点都打开到最后一级的树。我只想打开第一个薰衣草。怎么做。有什么背景或其他的吗?请帮助

所有内容都在dynatree和中。检查
minExpandLevel

所有内容都在dynatree和中。检查
minExpandLevel

Hi我添加了minExpandLevel,但它不工作。它不会在浏览器的错误控制台中显示任何js错误。另外,在您的数据项中,请确保将
expand
属性设置为false。也许
minExpandLevel
不是您想要的,因为它会使第一级节点不可折叠。您好,我添加了minExpandLevel,但它不起作用。它不会在浏览器的错误控制台中显示任何js错误。另外,在您的数据项中,请确保将
expand
属性设置为false。也许
minExpandLevel
不是您想要的,因为它会使第一级节点不可折叠。