zoukankan      html  css  js  c++  java
  • JQuery zTree树结构使用

    此博文只是针对项目中应用到的总结,想了解zTree的其它用法,可以参考zTree官网: http://www.ztree.me/v3/main.php#_zTreeInfo

    效果图:

    javascript代码:

        <script src="/Scripts/jquery-1.8.3.min.js" type="text/javascript"></script>
        <script src="/Scripts/tree/jquery.ztree.all-3.5.min.js" type="text/javascript"></script>
        <script type="text/javascript">
            var zNodesycBQ = [<%=GetSelectBQ(3) %>];//后台取出的ztree要求的JSON格式数据
            var zNodesycHLCS = [<%=GetSelectHLCS(3) %>]; //后台取出的ztree要求的JSON格式数据
    //在点击之前执行,如果已选择则设置不选中,否则设置选中
    function setBeforeClick(domId, treeNode) {
        var zTree = $.fn.zTree.getZTreeObj(domId);
        if (zTree != null) {
            zTree.checkNode(treeNode, !treeNode.checked, true, true);
        }
        return true;
    }
    //点击之后执行 计算等操作 病情
    function onCheckBQ(e, treeId, treeNode) {
        setOnCheckBQ("yc", treeNode);
    }
    function setOnCheckBQ(domId, treeNode) {
        var zTree = $.fn.zTree.getZTreeObj("tree" + domId + "BQ");
        if (zTree != null) {
            var nodes = zTree.getCheckedNodes(true);
            var xuanxian = "";
            var zongfen = 0;
            var b = false;
            for (var i = 0, l = nodes.length; i < l; i++) {
                var strs = nodes[i].ename.split('|');
                xuanxian += strs[0] + ",";
                if (strs[0] == 15) {//选择已发生压疮
                    b = true;
                }
                zongfen += parseInt(strs[1]);
            }
            if (xuanxian.length > 0) xuanxian = xuanxian.substring(0, xuanxian.length - 1);
            //大于设置分值,或者有疮,则需要勾选翻身
            var hlcsTree = $.fn.zTree.getZTreeObj("tree" + domId + "HLCS");
            if (zongfen >= parseInt($("#txtEvaluationScore").val()) || b) {
                hlcsTree.checkNode(hlcsTree.getNodeByParam("id", 2, null), true, true);
            } else {
                hlcsTree.checkNode(hlcsTree.getNodeByParam("id", 2, null), false, true);
            }
            //小于指定分值或者有疮,需要预报
            if (zongfen >= parseInt($("#txtEvaluationScore").val()) || b) {
                $("#tfootYB").show();
                $("#tableYB").show();
                $("#btPostionAdd").show();
                $("#bt" + domId + "NMRC").removeAttr("disabled");
                $("#bt" + domId + "NMRC").removeClass("aspNetDisabled");
            } else {
                $("#tfootYB").hide();
                $("#tableYB").hide();
                $("#btPostionAdd").hide();
                $("#bt" + domId + "NMRC").attr("disabled", "disabled");
                $("#bt" + domId + "NMRC").addClass("aspNetDisabled");
            }
            $("#lbl" + domId + "ZF").text(zongfen);
            $("#txt" + domId + "XX").val(xuanxian);
            $("#txt" + domId + "ZF").val(zongfen);
        }
    }
    //点击之后执行 计算等操作 措施
    function onCheckCS(e, treeId, treeNode) {
        setOnCheckCS("yc", treeNode);
    }
    function setOnCheckCS(domId, treeNode, txtXuanXianId) {
        var zTree = $.fn.zTree.getZTreeObj("tree" + domId + "HLCS");
        if (zTree != null) {
            var nodes = zTree.getCheckedNodes(true);
            var xuanxian = "";
            for (var i = 0, l = nodes.length; i < l; i++) {
                xuanxian += nodes[i].ename + ",";
            }
            if (xuanxian.length > 0) xuanxian = xuanxian.substring(0, xuanxian.length - 1);
            $("#txt" + domId + "HLCS").val(xuanxian);
        }
    }
    var settingycBQ = { check: { enable: true, chkStyle: "checkbox", chkboxType: { "Y": "ps", "N": "ps"} }, data: { simpleData: { enable: true} }, callback: { beforeClick: beforeClickycBQ, onCheck: onCheckBQ} };
    function beforeClickycBQ(treeId, treeNode) { setBeforeClick("treeycBQ", treeNode); };
    
    var settingycCS = { check: { enable: true, chkStyle: "checkbox", chkboxType: { "Y": "ps", "N": "ps"} }, data: { simpleData: { enable: true} }, callback: { beforeClick: beforeClickycCS, onCheck: onCheckCS} };
    function beforeClickycCS(treeId, treeNode) { setBeforeClick("treeycHLCS", treeNode); };
    
    $(function () {
        $.fn.zTree.init($("#treeycBQ"), settingycBQ, zNodesycBQ);
        $.fn.zTree.init($("#treeycHLCS"), settingycCS, zNodesycHLCS);
        //评分分值小于预报分值并且 已发生压疮未选中
        if (parseInt($("#txtycZF").val()) < parseInt($("#txtEvaluationScore").val()) && $("#treeycBQ_12_check").attr("class") == "button chk checkbox_false_full") {
            $("#tfootYB").hide();
            $("#tableYB").hide();
            $("#btPostionAdd").hide();
        }
    });
        </script>
    

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    ASP.NET动态加载用户控件的页面生成过程
    简单的flash与asp.net通信(LoadVars类)
    转 推荐两本FLASH RIA应用开发方面的书籍
    关于代码加密解密保护
    转 利用 SharpZipLib方便地压缩和解压缩文件
    在C#中应用哈希表(Hashtable)
    C#中解析并运行一个本地命令行
    About Windows Live Writer
    安装sql server 2008,提示要删除SQL Server 2005 Express 工具,可我根本没装
    [转] C#中的null
  • 原文地址:https://www.cnblogs.com/ful1021/p/4804439.html
Copyright © 2011-2022 走看看