easyui 使用 mark
2015-11-21 20:43
387 查看
1、异步树的生成,后台返回的json数据 带有 id、text
2、js控制datagrid的列显示与隐藏
3、js获取datagrid对象 生成table字符串
$(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; }
相关文章推荐
- 对话框视图UIAlertView,上拉菜单UIActionSheet,以及9.0之后完全取代他们的的UIAlertController
- UI - Xcode 7 使用xib设置控件圆角
- 1007. Maximum Subsequence Sum (25)
- UISlider
- uitextfiled
- 特殊权限控制之SUID、SGID、Sticky及facl
- UIView 中常见的方法总结
- UI基础-UINavigationController、界面通信
- UIsegmentControl
- UE4实用类PawnSensingComponent简介
- POJ 2299 Ultra-QuickSort
- HDU 4027 Can you answer these queries?【线段树】区间开平方,区间求和
- 手机-终端-UE
- 关于设置UILabel的文本缩进
- 爬爬爬之路:UI(九) UITableView(一) MVC模式M层的应用
- [TwistedFate]UITableView表视图
- 灭灯小游戏 UI代码
- UIView的setNeedsLayout, layoutIfNeeded 和 layoutSubviews 方法之间的关系解释
- unique 约束和null
- 在iOS 8中使用UIAlertController