1种方法在html中加载数据

    <div id="treegrid1" class="mini-treegrid" style="width:100%;" 
       url = "scripts5.3/data/tasks.txt"
         showTreeIcon="true" treeColumn="taskname" idField="UID" parentField="ParentTaskUID" resultAsTree="false">
        <div property="columns">
            <div type="indexcolumn"></div>
            <div name="taskname" field="Name" width="200">任务名称</div>
            <div field="Duration" width="100">工期</div>
            <div field="Start" width="100" dateFormat="yyyy-MM-dd">开始日期</div>
            <div field="Finish" width="100" dateFormat="yyyy-MM-dd">完成日期</div>
        </div>
    </div>

树形结构是正常的

 第二种方式用ajax方式加载

<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    <title></title>
    <script src="scripts5.3/jquery-1.6.2.min.js"></script>
    <script src="scripts5.3/miniui.js"></script>
    <script src="scripts5.3/locale/zh_CN.js"></script>
    <link href="scripts5.3/MiniUI/miniui.css" rel="stylesheet" />
    <link href="scripts5.3/MiniUI/icons.css" rel="stylesheet" />
    <script>
        $(function () {
            reload();
        })
        function reload() {
            var data =[];
            $.ajax({      
                //type:"post"      
                url: "scripts5.3/data/tasks.txt",
                async: false,
                dataType: 'json',
                success: function (results) {
                    data = results;
                    console.log(data);
                    alert("加载数据成功!" + data.length);
                }
            });
            mini.parse();
            var treegrid = mini.get("treegrid1");
            treegrid.loading();
            treegrid.setData(data);  // 绑定数据         
            var node = treegrid.getRow(0);
            treegrid.expandNode(node);//展开第一行
        }
    </script>
</head>
<body>
    <div id="treegrid1" class="mini-treegrid" style="width:100%;"        
         showTreeIcon="true" treeColumn="taskname" idField="UID" parentField="ParentTaskUID" resultAsTree="false">
        <div property="columns">
            <div type="indexcolumn"></div>
            <div name="taskname" field="Name" width="200">任务名称</div>
            <div field="Duration" width="100">工期</div>
            <div field="Start" width="100" dateFormat="yyyy-MM-dd">开始日期</div>
            <div field="Finish" width="100" dateFormat="yyyy-MM-dd">完成日期</div>
        </div>
    </div>
</body>

显示的效果

没有显示出树结构来,检查代码,也没出错,按f12调试也正常

 

 后来在minui论坛中找到http://miniui.com/forum/forum.php?mod=viewthread&tid=62201&highlight=treegrid%2Bajax

loadData(data)     //加载列表结构数据
loadList(data,"id","pid")  //加载树形数据

于是将 treegrid.setData(data);  换成 treegrid.loadList(data, "UID", "ParentTaskUID") 就正常显示了

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐