• zTree在Asp.Net中的使用


    前台代码:

    <link rel="stylesheet" href="../css/zTreeStyle/zTreeStyle.css" type="text/css">
        <script type="text/javascript" src="../script/jquery-1.4.4.min.js"></script>
        <script type="text/javascript" src="../script/jquery.ztree.core-3.5.js"></script>
        <script type="text/javascript" src="../script/jquery.ztree.excheck-3.5.js"></script>
        <script language="javascript" type="text/javascript">
            
            var setting = {
                check: {
                    enable: true,
                    chkboxType: {"Y":"", "N":""}
                },
                view: {
                    dblClickExpand: false
                },
                data: {
                    simpleData: {
                        enable: true
                    }
                },
                callback: {
                    beforeClick: beforeClick,
                    onCheck: onCheck
                }
            };
    
            var zNodes =<%= seriesData.ToString() %>;
    
            function beforeClick(treeId, treeNode) {
                var zTree = $.fn.zTree.getZTreeObj("treeDemo");
                zTree.checkNode(treeNode, !treeNode.checked, null, true);
                return false;
            }
            
            function onCheck(e, treeId, treeNode) {
                var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
                nodes = zTree.getCheckedNodes(true),
                v = "";
                var hidSaveId = "";
                for (var i=0, l=nodes.length; i<l; i++) {
                    v += nodes[i].name + ",";
                    hidSaveId += nodes[i].id + ",";
                }
                if (v.length > 0 ) v = v.substring(0, v.length-1);
                var cityObj = $("#txtProPlayers");
                cityObj.attr("value", v);
                var hidObj = $("#hidSaveId");
                hidObj.attr("value",hidSaveId);
            }
    
            function showMenu() {
                var cityObj = $("#txtProPlayers");
                var cityOffset = $("#txtProPlayers").offset();
                $("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
    
                $("body").bind("mousedown", onBodyDown);
            }
            function hideMenu() {
                $("#menuContent").fadeOut("fast");
                $("body").unbind("mousedown", onBodyDown);
            }
            function onBodyDown(event) {
                if (!(event.target.id == "menuBtn" || event.target.id == "txtProPlayers" || event.target.id == "menuContent" || $(event.target).parents("#menuContent").length>0)) {
                    hideMenu();
                }
            }
    
            $(document).ready(function(){
                $.fn.zTree.init($("#treeDemo"), setting, zNodes);
            });
    
    
            function proSave()
            {
                var proname = document.getElementById('txtProName').value;
                if(proname.length < 1)
                {
                    alert('项目名称不能为空!');
                    return false;
                }
                else
                {
                    return true;
                }
            }
        </SCRIPT>
    
    <asp:TextBox ID="txtProPlayers" ReadOnly="true" runat="server" Width="300px"  onclick="showMenu();" ></asp:TextBox>
                        <div id="menuContent" class="menuContent" style="display:none; position: absolute;">
                            <ul id="treeDemo" class="ztree" style="margin-top:0; 180px; height: 300px;"></ul>
                        </div>
                        <asp:HiddenField ID="hidSaveId" runat="server" />
    View Code

    后台代码:

    public StringBuilder seriesData = new StringBuilder();
            public DataSet ds1;
            public DataSet ds2;
    
            protected void Page_Load(object sender, EventArgs e)
            {
                string cmdstr = "";
                string cmdstr1 = "";
                string name = "";
                string no = "";
                string departID = "";
                string parentID = "";
                cmdstr = "select * from tb_Depart";
                ds1 = PM.DBUtility.DbHelperSQL.Query(cmdstr);
                seriesData.Append("[");
                for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
                {
                    seriesData.Append("{");
                    name = ds1.Tables[0].Rows[i]["DepartName"].ToString();
                    seriesData.Append("name:"" + name + """);
                    seriesData.Append(",");
                    no = ds1.Tables[0].Rows[i]["ID"].ToString();
                    seriesData.Append("id:" + no);
                    seriesData.Append(",");
                    parentID = ds1.Tables[0].Rows[i]["ParentID"].ToString();
                    //seriesData.Append("pId:" + parentID);
                    seriesData.Append("pId:0");
                    seriesData.Append(",");
                    seriesData.Append("open:true,nocheck:true}");
                    if (i != ds1.Tables[0].Rows.Count - 1)
                    {
                        seriesData.Append(",");
                    }
                    cmdstr1 = "select * from tb_User where DepartID='" + no + "'";
                    ds2 = PM.DBUtility.DbHelperSQL.Query(cmdstr1);
                    for (int j = 0; j < ds2.Tables[0].Rows.Count; j++)
                    {
                        seriesData.Append("{");
                        name = ds2.Tables[0].Rows[j]["UserRealName"].ToString();
                        seriesData.Append("name:"" + name + """);
                        seriesData.Append(",");
                        no = ds2.Tables[0].Rows[j]["ID"].ToString();
                        seriesData.Append("id:" + no);
                        seriesData.Append(",");
                        departID = ds2.Tables[0].Rows[j]["DepartID"].ToString();
                        seriesData.Append("pId:" + departID);
                        seriesData.Append("}");
                        if (j != ds2.Tables[0].Rows.Count)
                        {
                            seriesData.Append(",");
                        }
                    }
                }
                seriesData.Append("]");
            }
    
    
    
    /// <summary>
            /// 执行查询语句,返回DataSet
            /// </summary>
            /// <param name="SQLString">查询语句</param>
            /// <returns>DataSet</returns>
            public static DataSet Query(string SQLString)
            {
    
                using (SqlConnection connection = new SqlConnection(connectionString))
                {
                    DataSet ds = new DataSet();
                    try
                    {
                        connection.Open();
                        SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);
                        command.Fill(ds, "ds");
                    }
                    catch (System.Data.SqlClient.SqlException ex)
                    {
                        return ds;
                        throw new Exception(ex.Message);
                    }
                    return ds;
                }
    
            }
    
    /// <summary>
            /// 删除最后结尾的一个逗号
            /// </summary>
            public static string DelLastComma(string str)
            {
                return str.Substring(0, str.LastIndexOf(","));
            }
    View Code

    编辑页后台代码:

            public StringBuilder seriesData = new StringBuilder();
            public DataSet ds1;
            public DataSet ds2;
            public DataSet ds3;
            protected void Page_Load(object sender, EventArgs e)
            {
                string cmdstr = "";
                string cmdstr1 = "";
                string name = "";
                string no = "";
                string departID = "";
                string parentID = "";
                cmdstr = "select * from tb_Depart";
                ds1 = PM.DBUtility.DbHelperSQL.Query(cmdstr);
                seriesData.Append("[");
                for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
                {
                    seriesData.Append("{");
                    name = ds1.Tables[0].Rows[i]["DepartName"].ToString();
                    seriesData.Append("name:"" + name + """);
                    seriesData.Append(",");
                    no = ds1.Tables[0].Rows[i]["ID"].ToString();
                    seriesData.Append("id:" + no);
                    seriesData.Append(",");
                    parentID = ds1.Tables[0].Rows[i]["ParentID"].ToString();
                    //seriesData.Append("pId:" + parentID);
                    seriesData.Append("pId:0");
                    seriesData.Append(",");
                    seriesData.Append("open:true,nocheck:true}");
                    if (i != ds1.Tables[0].Rows.Count - 1)
                    {
                        seriesData.Append(",");
                    }
                    cmdstr1 = "select * from tb_User where DepartID='" + no + "'";
                    ds2 = PM.DBUtility.DbHelperSQL.Query(cmdstr1);
                    for (int j = 0; j < ds2.Tables[0].Rows.Count; j++)
                    {
                        seriesData.Append("{");
                        name = ds2.Tables[0].Rows[j]["UserRealName"].ToString();
                        seriesData.Append("name:"" + name + """);
                        seriesData.Append(",");
                        no = ds2.Tables[0].Rows[j]["ID"].ToString();
                        seriesData.Append("id:" + no);
                        seriesData.Append(",");
                        departID = ds2.Tables[0].Rows[j]["DepartID"].ToString();
                        seriesData.Append("pId:" + departID);
    
                        //默认选中参与人,并赋值给文本框
                        int id = Convert.ToInt32(Request.QueryString["id"].ToString());
                        string cmdstr2 = "select ProjectPlayers from tb_Project where ProjectID=" + id;
                        ds3 = PM.DBUtility.DbHelperSQL.Query(cmdstr2);
                        string players = ds3.Tables[0].Rows[0]["ProjectPlayers"].ToString();
                        string[] str = players.Split(',');
                        foreach (string key in str)
                        {
                            if (key == ds2.Tables[0].Rows[j]["ID"].ToString())
                            {
                                seriesData.Append(",checked:true");
                                hidSaveId.Value = ds3.Tables[0].Rows[0]["ProjectPlayers"].ToString();
                                txtProPlayers.Text = returnUserName(ds3.Tables[0].Rows[0]["ProjectPlayers"].ToString());
                            }
                        }
    
                        seriesData.Append("}");
                        if (j != ds2.Tables[0].Rows.Count)
                        {
                            seriesData.Append(",");
                        }
                    }
                }
                seriesData.Append("]");
            }
    View Code

         

  • 相关阅读:
    【Spring学习】Spring的源码解析之路 ——【step1】基础环境配置 + IDEA快捷键整理
    【Spring学习】Spring的源码解析之路
    【Android端】【日志收集上报SDK相关内容测试的方案梳理总结】
    【codelife 阿里技术文章分享——读后感】
    【python深入】map/reduce/lambda 内置函数的使用
    【python深入】单例模式
    【python深入】装饰器理解及使用
    【python深入】collections-Counter使用总结
    【python深入】dict和list实现排序:sorted()和lambda的使用
    选择排序
  • 原文地址:https://www.cnblogs.com/liuswi/p/3614224.html
Copyright © 2020-2023  润新知