• 【笔记】ztree的使用


    引用的js和css:

    <!-- zTreeJS -->
    <script type="text/javascript" src="jquery/jquery-1.7.min.js"></script>
    <script type="text/javascript" src="zTree/js/jquery.ztree.core-3.2.js"></script>
    <script type="text/javascript" src="zTree/js/jquery.ztree.excheck-3.2.js"></script>
    <script type="text/javascript" src="zTree/js/jquery.ztree.exedit-3.2.js"></script>

    //异步加载节点
    var setting = {
        data: {
            key : {
                name : "name"
            },
            simpleData: {
                enable: true,
                idKey: "id",
                pIdKey: "pId",
                rootPId: 0
            }
        },
        async: {
            //异步加载
            enable: true,
            url:  "${ctx}/admin/learn/course!publicCourseTree.do",
            autoParam : [ "id" ],
            dataType : "json",
            type : "post"
        },
        check : {
            enable : false,
            chkStyle : "radio",
            radioType : "level"
        },
        callback: {
            beforeExpand: beforeExpand,
            onAsyncSuccess: onAsyncSuccess,
            onAsyncError: onAsyncError,
            onClick : function(event, treeId, treeNode) {
                var    courseID = treeNode.id;    
                $("#courseID").val(courseID);    
                $.post("${ctx}/admin/learn/course!getCourseTreeInfo.do?id="+courseID,
                    {"parm":""},
                    function(data) {
                        $.each(data, function(i,item) {
                            $("#codeSM").html(item.id);
                            $("#name").html(item.name);
                            $("#flag").val(item.status);
                               $("#description").html(item.description);
                               $("#createtime").html(item.createtime);
                               if(item.status=="1"){
                                   $("#updateflag").val("取消发布");
                                   $("#status").html("已发布");
                               }else{
                                   $("#updateflag").val("发布");
                                   $("#status").html("未发布");
                               }
                               if(item.imgurl!=null){
                                   $("#img").attr("src","${ctx}/uploads/"+item.imgurl);
                               }else{
                                   $("#img").attr("src","");
                               }
                           });
                     }, "json");
               }
        }
    };

    function beforeExpand(treeId, treeNode) {
    if (!treeNode.isAjaxing) {
    return true;
    } else {
    alert("zTree 正在下载数据中,请稍后展开节点。。。");
    return false;
    }
    }
    function onAsyncSuccess(event, treeId, treeNode, msg) {

    
    

    }
    function onAsyncError() {
    alert(" 数据加载失败");
    }

    function createTree() {
    $.ajax({
    url: "${ctx}/admin/learn/course!publicCourseTree.do", //url action是方法的名称
    data: { id: -1 },
    type: 'Get',
    dataType: "json", //可以是text,如果用text,返回的结果为字符串;如果需要json格式的,可是设置为json
    success: function (data) {
    $.fn.zTree.init($("#_courseTreeSM"), setting, eval(data));
    },
    error: function (msg) {
    alert(" 数据加载失败!" + msg);
    }
    });
    }

    $(document).ready(function () {
    createTree();
    });

    //删除
    var tree = $.fn.zTree.getZTreeObj("_stationTreeSM");
                                var node = tree.getNodeByParam("ID", response.id, null);
                                tree.removeNode(node);
    var node = treeObj.getNodeByParam("ID", response.parentid, null);
    //添加
    treeObj.addNodes(node, {ID : response.newStationID, NAME : $("#nameAS").val()});
    //修改
    node.NAME = $('#nameAS').val();
    treeObj.updateNode(node);
    public List<Map<String, Object>> getPublicCourseTree(String id, Integer orgID)
        {
            List<Map<String, Object>> list1 = new ArrayList<Map<String, Object>>();
            List<Map<String, Object>> list2 = new ArrayList<Map<String, Object>>();
            if (null == id && !"".equals(id)){
                String hql="SELECT t.id, t.name, t.parentid as pid,t.description,DATE_FORMAT(t.createtime, '%Y-%m-%d') createtime,t.status,t.imgurl,(SELECT COUNT(t2.id) FROM c_publiccourse_tab t2 WHERE t2.parentid = t.id) coun FROM c_publiccourse_tab t WHERE  t.PARENTID = -1 and t.orgid='"+orgID+"'";
                Query query = super.createSQLQuery(hql).addScalar( "id" , Hibernate.STRING).addScalar( "name" , Hibernate.STRING).addScalar( "pid" , Hibernate.STRING)
                        .addScalar( "description" , Hibernate.STRING).addScalar( "createtime" , Hibernate.STRING).addScalar( "status" , Hibernate.STRING).addScalar( "imgurl" , Hibernate.STRING).addScalar( "coun" , Hibernate.STRING).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
                list1=query.list();
            }else{
                String hql = "SELECT t.id, t.name , t.parentid as pid,t.description,DATE_FORMAT(t.createtime, '%Y-%m-%d') createtime,t.status,t.imgurl,(SELECT COUNT(t2.id) FROM c_publiccourse_tab t2 WHERE t2.parentid = t.id) coun FROM c_publiccourse_tab t WHERE  t.PARENTID ='" + id +"'  and t.orgid='"+orgID+"' order by t.id asc";
                Query query = super.createSQLQuery(hql).addScalar( "id" , Hibernate.STRING).addScalar( "name" , Hibernate.STRING).addScalar( "pid" , Hibernate.STRING)
                        .addScalar( "description" , Hibernate.STRING).addScalar( "createtime" , Hibernate.STRING).addScalar( "status" , Hibernate.STRING).addScalar( "imgurl" , Hibernate.STRING).addScalar( "coun" , Hibernate.STRING).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
                list1=query.list();
            }
            for (Map<String, Object> map : list1){
                map.put("open", true);
                String parentid = map.get("pid").toString();
                if (parentid.equals("-1")){
                    map.put("open", true);
                    int count = Integer.parseInt(map.get("coun").toString());
                    if (count > 0){
                        map.put("isParent", true);
                    }else{
                        map.put("isParent", false);
                    }
                }else{
                    int count = Integer.parseInt(map.get("coun").toString());
                    if (count > 0){
                        map.put("isParent", true);
                    }
                }
                list2.add(map);
            }
            return list2;
        }
    
        List<Map<String, Object>> data=publicCourseManager.getPublicCourseTree2(id,orgID);
            try
            {
                response.getWriter().write(JSONArray.fromObject(data).toString());
            } catch (IOException e)
            {
                e.printStackTrace();
            }
  • 相关阅读:
    C语言中的排序算法--冒泡排序,选择排序,希尔排序
    常见算法:C语言求最小公倍数和最大公约数三种算法
    提高软件测试效率的方法探讨
    面试官询问的刁钻问题——以及如何巧妙地应付它们
    软件测试面试--如何测试网页的登录页面
    如何衡量测试效率,如何提高测试效率!
    利用交叉测试提升软件测试效率
    交叉测试的必要性和遇到的问题
    敏捷测试
    HttpWatch工具简介及使用技巧
  • 原文地址:https://www.cnblogs.com/mybug/p/6251681.html
Copyright © 2020-2023  润新知