EasyUI使用tree方法生成树形结构加载两次的问题

时间:2022-03-16 03:56:58

html代码中利用class声明了easyui-tree,导致easyUI解析class代码的时候先解析class声明中的easyui-tree这样组件就请求了一次url;然后又调用js初始化代码请求一次url。这样导致了重复加载,解决的方法就是只用一种初始化方法来声明easyUI组件以避免重复的提交请求,即删除html中的class声明(class="easyui-tree");

加载两次的写法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<div class="easyui-panel" style="padding:5px;height:300px;">
    <ul id="roleTree" class="easyui-tree"></ul>
</div>
<script type="text/javascript">
    $(document).ready(function(){
        var id = $("#role_id").val();
        $('#roleTree').tree({
            method:'get',
            animate:true,
            checkbox:true,
            url: '/index.php?m=role&f=getRole',
            loadFilter: function(data){
                if (data){
                    return data;
                }
            }
        });
    });
</script>

避免加载两次只需要把<ul id="roleTree" class="easyui-tree"></ul>中的class="easyui-tree"删除就可以,因为在js代码已经声明了easyui-tree