EasyUI 簡介
easyui是一種基於jQuery的使用者介面插件集合。
easyui為創建現代化,互動,JavaScript應用程序,提供必要的功能。
使用easyui你不需要寫很多程式碼,你只需要透過寫一些簡單HTML標記,就可以定義使用者介面。
easyui是個完美支援HTML5網頁的完整框架。
easyui節省您網頁開發的時間和規模。
easyui很簡單但功能強大的。
在後台管理系統開發的過程中,上左右的佈局是最常見的頁面佈局方式,現在我們來看看使用easyui這個jquery前端框架如何快速構建一個可用的頁面框架。
1.在頁面中引入easyui所需的檔案
<%-- 加载easyui的样式文件,bootstrap风格 --%> <link href="${ctx }/css/themes/bootstrap/easyui.css" rel="stylesheet"> <link href="${ctx }/css/themes/icon.css" rel="stylesheet"> <%-- 加载jquery和easyui的脚本文件 --%> <script src="${ctx }/js/jquery-easyui-../jquery.min.js"></script> <script src="${ctx }/js/jquery-easyui-../jquery.easyui.min.js"></script> <script src="${ctx }/js/jquery-easyui-../locale/easyui-lang-zh_CN.js"></script>
2.在頁面body部分建構必要的html結構
<body> <div id="home-layout"> <!-- 页面北部,页面标题 --> <div data-options="region:'north'" style="height:50px;"> <!-- add your code --> </div> <!-- 页面西部,菜单 --> <div data-options="region:'west',title:'菜单栏'" style="width:200px;"> <div class="home-west"> <ul id="home-west-tree"></ul> </div> </div> <!-- 页面中部,主要内容 --> <div data-options="region:'center'"> <div id="home-tabs"> <div title="首页"> <h2 style="text-align: center">欢迎登录</h2> </div> </div> </div> </div> </body>
這裡要注意一點:easyui在使用layout佈局的時候,north、south需要指定高度,west、east需要指定寬度,而center會自動適應高和寬。
3.使用js初始化easyui元件
我個人比較推薦使用js程式碼去初始化easyui元件,而不使用easyui標籤中的data-options屬性去初始化。因為對於後台開發人員來說,寫js程式碼可能比寫html標籤更熟悉,而且這樣使得html程式碼更加簡潔。
<script> $(function(){ /* * 初始化layout */ $("#home-layout").layout({ //使layout自适应容器 fit: true }); /* * 获取左侧菜单树,并为其节点指定单击事件 */ $("#home-west-tree").tree({ //加载菜单的数据,必需 url: "${ctx }/pages/home-west-tree.json", method: "get", //是否有层次线 lines: true, //菜单打开与关闭是否有动画效果 animate: true, //菜单点击事件 onClick: function(node){ if(node.attributes && node.attributes.url){ //打开内容区的tab,代码在其后 addTab({ url: "${ctx }/" + node.attributes.url, title: node.text }); } } }); /* * 初始化内容区的tabs */ $("#home-tabs").tabs({ fit : true, //tab页是否有边框 border : false });}) </script> <script> /* * 在内容区添加一个tab */ function addTab(params){ var t = $("#home-tabs"); var url = params.url; var opts = { title: params.title, closable: true, href: url, fit: true, border: false }; //如果被选中的节点对应的tab已经存在,则选中该tab并刷新内容 //否则打开一个新的tab if(t.tabs("exists", opts.title)){ var tab = t.tabs("select", opts.title).tabs("getSelected"); t.tabs("update", { tab: tab, options: opts }); }else{ t.tabs("add", opts); } } </script>
4.easyui-tree組件所需的json格式
easyui使用的傳輸格式為json,它對json內容的格式有比較嚴格的限制,所以請注意查看api
[{ "text":"区域管理", "attributes":{ "url":"pages/consume/area/areaList.jsp" } },{ "text":"预约信息管理", "children":[{ "text":"商户预约信息查询", "attributes":{ "url":"/pages/consume/reservation/merchantReservation/merchantReservationList.jsp" } }] },{ "text":"准入申请管理", "children":[{ "text":"商户准入申请", "state":"closed", "children":[{ "text":"商户待处理申请", "attributes":{ "url":"waterAply.do?method=toList&channelType=1&handleFlag=aply_wait" } },{ "text":"商户审批中申请", "attributes":{ "url":"waterAply.do?method=toList&channelType=1&handleFlag=aply_current" } },{ "text":"商户审批通过申请", "attributes":{ "url":"waterAply.do?method=toList&channelType=1&handleFlag=aply_pass" } },{ "text":"商户被拒绝申请", "attributes":{ "url":"waterAply.do?method=toList&channelType=1&handleFlag=aply_refuse" } }] }] },{ "text":"准入审批管理", "children":[{ "text":"商户审批管理", "state":"closed", "children":[{ "text":"当前任务", "children":[{ "text":"商户当前初审任务", "attributes":{ "url":"pages/consume/approval/merchantApproval/merchantApprovalTrial.jsp" } },{ "text":"商户当前复审任务", "attributes":{ "url":"pages/consume/approval/merchantApproval/merchantApprovalRetrial.jsp" } }] },{ "text":"商户已完成任务", "attributes":{ "url":"pages/consume/approval/merchantApproval/merchantApprovalDone.jsp" } },{ "text":"商户不通过任务", "attributes":{ "url":"pages/consume/approval/merchantApproval/merchantApprovalRefuse.jsp" } }] }] }]
就這樣,我們使用easyui完成了簡單的左右佈局。
以上所述是小編給大家分享的jQuery Easyui實作上左右版面的相關內容,希望對大家有幫助。