easyui 使用 mark

来源:互联网 发布:sketch软件介绍 编辑:程序博客网 时间:2024/06/05 22:38





1、异步树的生成,后台返回的json数据 带有 id、text
            $(function () {                var $tree = $("#orgTree");                var treeUrl = "../../OrgCURD/GetOrgTree";                $("#orgTree").tree({                    lines: true,                    url: treeUrl,                    onBeforeExpand: function (node) {                        $tree.tree("options").url = treeUrl + "?id=" + node.id;                    },                    onSelect: function (node) {                        queryUserLst(node.id);                        if (node.state === "closed") {//选中时进行折叠与展开                            $tree.tree("expand", node.target);                            node.state = "open";                        }                        else {                            $tree.tree("collapse", node.target);                            node.state = "closed";                        }                    }                });            });





2、js控制datagrid的列显示与隐藏

    EasyLib.Ctl.SetDataGridColumn = function (dict) {        var $row1 = $(".datagrid-view > div").last().find(".datagrid-header .datagrid-header-row").first();        var $row2 = $(".datagrid-view > div").last().find(".datagrid-header .datagrid-header-row").last();        var $btable = $(".datagrid-view > div").last().find(".datagrid-body .datagrid-btable");        //格线第1行        if ($row1.length) {            //统计合并列数据            var colspanArr = [];            for (var i = 0; i < $row1.find("td").length; i++) {                var $td = $row1.find("td:eq(" + i + ")");                var colspan = $td.attr("colspan");                if ($td.attr("colspan")) {                    colspanArr.push(Number(colspan));                }                else {                    colspanArr.push(1);                }            }            //根据指定索引计算第1行的真实索引            var Row1StartIndex = -1;            var Row1EndIndex = -1;            if (Row1StartIndex === -1) {                if (dict.StartIndex === 0) {                    Row1StartIndex = 0;                }                else {                    var TotalIndex = 0;                    for (var i = 0; i < colspanArr.length; i++) {                        TotalIndex += colspanArr[i];                        if (TotalIndex >= dict.StartIndex) {                            Row1StartIndex = i + 1;                            break;                        }                    }                }            }            if (Row1EndIndex === -1) {                if (dict.EndIndex === -1) {                    Row1EndIndex = $row1.find("td").length - 1;                }                else {                    var TotalIndex = 0;                    for (var i = 0; i < colspanArr.length; i++) {                        TotalIndex += colspanArr[i];                        if (TotalIndex > dict.EndIndex) {                            Row1EndIndex = i;                            break;                        }                    }                }            }            for (var i = Row1StartIndex; i <= Row1EndIndex; i++) {                if (dict.Visibility === "show") {                    $row1.find("td:eq(" + i + ")").show();                }                else if (dict.Visibility === "hide") {                    $row1.find("td:eq(" + i + ")").hide();                }            }        }        if (dict.EndIndex === -1) {//当结束索引为-1时的处理            dict.EndIndex = $row2.find("td").length            if ($(".datagrid-td-rownumber").length) {//是否显示序号                dict.EndIndex = dict.EndIndex + 1;            }            dict = dict;        }        //格线第2行        if ($row2.length) {            for (var i = dict.StartIndex; i <= dict.EndIndex; i++) {                if (dict.Visibility === "show") {                    $row2.find("td:eq(" + i + ")").show();                }                else if (dict.Visibility === "hide") {                    $row2.find("td:eq(" + i + ")").hide();                }            }        }        //格线具体内容        if ($btable.length) {            var fieldArr = [];            for (var i = 0; i < $btable.find("tr").first().find("td").length; i++) {                fieldArr.push($btable.find("td:eq(" + i + ")").attr("field"));            }            for (var i = dict.StartIndex; i <= dict.EndIndex; i++) {                if (dict.Visibility === "show") {                    $("[field='" + fieldArr[i] + "']").show();                }                else if (dict.Visibility === "hide") {                    $("[field='" + fieldArr[i] + "']").hide();                }            }        }    }






3、js获取datagrid对象 生成table字符串


EasyLib.Ctl.GetDataGridColumn = function ($obj) {        var result = '<table cellspacing="0">';        var frozenColumns = $obj.datagrid("options").frozenColumns;//得到frozenColumns对象        var columns = $obj.datagrid("options").columns;//得到columns对象        var rows = $obj.datagrid("getRows");//得到记录行对象        var nameList = new Array();        // 载入title        $(columns).each(function (index) {            result += '<tr>';            if (frozenColumns && frozenColumns[index]) {//冻结列                for (var i = 0; i < frozenColumns[index].length; ++i) {                    if (!frozenColumns[index][i].hidden) {                        result += '<th width="' + frozenColumns[index][i].width + '"';                        if (frozenColumns[index][i].rowspan) {                            result += ' rowspan="' + frozenColumns[index][i].rowspan + '"';                        }                        if (frozenColumns[index][i].colspan) {                            result += ' colspan="' + frozenColumns[index][i].colspan + '"';                        }                        if (frozenColumns[index][i].field) {                            nameList.push(frozenColumns[index][i]);                        }                        result += '>' + (frozenColumns[0][i].title ? frozenColumns[0][i].title : "") + '</th>';                    }                }            }            else {                for (var i = 0; i < columns[index].length; ++i) {//非冻结列                    if (!columns[index][i].hidden) {                        result += '<th width="' + columns[index][i].width + '"';                        if (columns[index][i].rowspan) {                            result += ' rowspan="' + columns[index][i].rowspan + '"';                        }                        if (columns[index][i].colspan) {                            result += ' colspan="' + columns[index][i].colspan + '"';                        }                        if (columns[index][i].field) {                            nameList.push(columns[index][i]);                        }                        result += '>' + (columns[index][i].title ? columns[index][i].title : "") + '</th>';                    }                }            }            result += '</tr>';        });        // 载入内容        for (var i = 0; i < rows.length; ++i) {            result += '<tr>';            for (var j = 0; j < nameList.length; ++j) {                var e = nameList[j].field.lastIndexOf('_0');                result += '<td';                if (nameList[j].align) {                    result += ' style="text-align:' + nameList[j].align + ';"';                }                result += '>';                if (e + 2 == nameList[j].field.length) {                    result += rows[i][nameList[j].field.substring(0, e)];                }                else {                    result += rows[i][nameList[j].field];                }                result += '</td>';            }            result += '</tr>';        }        result += '</table>';        return result;    }


0 0
原创粉丝点击