easyui 使用 mark

原创 2015年11月21日 20:43:34





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;
    }


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

相关文章推荐

mark down 使用

在 WWDC2014 中,苹果推出了最新的 iOS8 系统,其中也伴随着很多控件的更新与升级。其中全新的 WebKit 库让人很是兴奋。本文也将讲解到 WebKit 中更新的 WKWebView 控件...

GitHub + Node.js 使用 mark + GitHub指南

(1) Github     Git是由Linus Torvalds(大爱的教父级人物……)发起的,GitHub由Chris Wanstrath、PJ Hyett和Tom Preston-Werne...

mark-使用volley以及百度定位获取天气

1、网络框架方面直接借用了开源的网络框架volley,可实现网络请求的排序队列 详细信息可以看: 项目地址 https://github.com/smanikandan14/Volley-demo...

OC学习 #pragma mark指令的使用 这个没有什么可说的直接用就可以了,知道这个是什么即可

#pragma mark指令的使用   功能:简单来说就是对代码的分组,方便代码查找和导航用的   它们告诉Xcode编译器,要在编辑器窗格顶部的方法和函数弹出菜单中将代码分隔开。...
  • hccgk
  • hccgk
  • 2015-07-27 17:45
  • 288

表中真正使用的空间(How to Determine Real Space used by a Table (Below the High Water Mark)

How to Determine Real Space used by a Table (Below the High Water Mark) [ID 77635.1]       修改时间 01-...

OC 使用#pragma mark代码分组

添加#pragma mark可以对代码分组 指令#pragma mark-生成一条横线 如图: 相关代码:#import #pragma mark Person类 interface Pers...
  • lovoo
  • lovoo
  • 2016-05-17 20:32
  • 685

FragmentTabHost 的使用mark

之前的项目使用的底部tab导航都是RadioGroup,最近看到一个Demo里用的是FragmentTabHost,貌似代码更简洁,逻辑更简单。遂拿来试试,希望好奇心不要害死猫。 布局文件里引入控件...

【mark一下语法】欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

Mark Down简单使用

Mark Down简单使用一、Mark Down介绍 什么是 Markdown Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。 简...

Ubuntu使用自我mark

很多东西每次都要搜,又记不住。。所以以后都贴这里来好了。。 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它? ERROR: E: 无法获得锁 /var/li...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)