EasyUI(1) -- 简介 & UI组件(layout & accordion & linkbutton & tabs & pagination)

EasyUI简介

1> 网址:www.jeasyui.com,下载并参考学习<<jQuery EasyUI v1.3.5官方API中文版.exe>>手册
2> 什么是jQuery-EasyUI

  • 是一种第三方组织开发的一款基于jQuery的,简单易用的,功能强大的
    WEB[后台前端]JavaScript现成的组件库
  • 注意:今天的EasyUI组件库的版本较高,需要高版本浏览器支持,
    中低版本浏览器会有不能正常执行的情况

3> JavaScript,AJAX,JSON,jQuery,EasyUI分别能解决什么问题

  • JS:基于浏览器对web页面中的节点进行操作,比较麻烦
  • jQuery:基于浏览器简化对web页面中的节点进行操作,做到了write less do more
  • AJAX:基于浏览器与服务端进行局部刷新的异步通讯编程模式
  • JSON:简化自定义对象的创建与AJAX数据交换轻量级文本
  • EasyUI:快速基于现成的组件创建自已的web页面
  • 组件:是指已经由第三方开源组织写好的,直接可以使用的功能界面,例如:form,layout,tree...
  • 注意:我们学的都是零散的组件,项目中需要将其装配起来,方可构建完整的web页面,
    EasyUI只是众多前端WEB组件之一(EasyUI / EXT / GoogleUI)

4> jQuery-EasyUI快速入门----可折叠功能的面板

  • 第一步:创建一个js-day05这么一个web工程
  • 第二步:在WebRoot目录下创建00-base.html
  • 第三步:在WebRoot目录下创建js和themes目录,导入官方文件( 参见<< jquery-easyui-1.3.6文件夹>> )
  • 第四步:在00-base.html 文件的<head>标签中引入如下文件
    <!-- 引入外部CSS文件 -->
    <link rel="stylesheet" href="../themes/icon.css" type="text/css"></link>
    <link rel="stylesheet" href="../themes/default/easyui.css" type="text/css"></link>
  
    <!-- 引入外部JS文件 -->
    <script type="text/javascript" src="../js/jquery.min.js"></script>
    <script type="text/javascript" src="../js/jquery.easyui.min.js"></script>
  • 第五步:在00-base.html 文件的<body>标签中创建如下<div>标签
    <div 
        id="p" 
        class="easyui-panel" 
        style="width:500px;height:200px;padding:10px;"   
        title="我的面板" 
        iconCls="icon-save" 
        collapsible="true">   
        内容<br/>
        内容<br/>
        内容<br/>
        内容<br/>
    </div>

EasyUI组件:

一)Layout布局
  1. 代码:
  • 基本布局:
     <!-- 布局面板 -->
     <div data-options="fit:true" id="cc" class="easyui-layout" style="width:600px;height:400px;">   
        <!-- 区域面板 -->
        <div data-options="region:'north',title:'北',split:false,collapsible:true" style="height:100px;"></div>   
        <div data-options="region:'south',title:'南',split:false,collapsible:true" style="height:100px;"></div>   
        <div data-options="region:'east',title:'东',split:false,collapsible:false,minWidth:150,maxWidth:150" style="width:100px;"></div>   
        <div data-options="region:'west',title:'西',split:false,collapsible:false,minWidth:150,maxWidth:150" style="width:100px;"></div>   
        <div data-options="region:'center',title:'中',iconCls:'icon-reload',href:'/js-day05/06_image.html',collapsible:false" style="padding:5px;background:#eee;"></div>   
     </div>
  • 拆分嵌套:
  <body class="easyui-layout">
        <!-- 北 -->
        <div data-options="region:'north'" style="height:150px"></div>  
        <!-- 中 -->
        <div data-options="region:'center'">
            <!-- 将中拆分边西和中二部份 -->
            <div class="easyui-layout" data-options="fit:true"> 
                <!-- 东 -->
                <div data-options="region:'west'" style="width:200px"></div> 
                <!-- 中 -->
                <div data-options="region:'center'"></div>
            </div>
        </div>
  </body>
  1. js调用:
<script type="text/javascript">
        //浏览器加载web页面时触发
        $(function(){
            //将北边面板折叠,字符串双引单引均可
            $('#cc').layout('collapse','north');
            //休息3秒
            window.setTimeout(function(){
                //将南边面板折叠,字符串双引单引均可
                $('#cc').layout('collapse','south');
            },"3000");
        });
    </script>
二)Accordion分类
  1. 代码:
        <!-- 容器 -->
        <div data-options="border:true,animate:true,multiple:false,selected:-1" id="aa" class="easyui-accordion" style="width:300px;height:500px;">   
            
            <!-- 面板 -->
            <div title="Title1" data-options="iconCls:'icon-save'" style="overflow:auto;padding:10px;">   
                内容1      
            </div>   
            <div title="Title2" data-options="iconCls:'icon-reload'" style="padding:10px;">   
                内容2 
            </div>   
            <div title="Title3" data-options="iconCls:'icon-reload',collapsible:true">   
                内容3 
            </div>   
            
        </div>
  1. js调用:
<script type="text/javascript">
            $(function(){
                //增加一个面板
                $("#aa").accordion("add",{
                    "title":"Title4",
                    "content":"内容4",
                    "selected":false,
                    "iconCls":"icon-search"
                });
                
                //休息3秒
                window.setTimeout(function(){
                    
                    //删除4号面板
                    $("#aa").accordion("remove",3);
                    
                    //取消选择1号面板
                    $("#aa").accordion("unselect",0);
                    
                },"3000");
            });
        </script>
三)LinkButton链接按钮
  1. 代码:
        <a id="btn-add" class="easyui-linkbutton" data-options="iconCls:'icon-add'">
            增加
        </a>
        <a id="btn-find" class="easyui-linkbutton" data-options="iconCls:'icon-search'">
            查询
        </a>
        <a id="btn-update" class="easyui-linkbutton" data-options="iconCls:'icon-edit'">
            修改
        </a>
        <a id="btn-delete" class="easyui-linkbutton" data-options="iconCls:'icon-remove'">
            删除
        </a>
  1. js调用:
        <script type="text/javascript">
            
            /*
            $("#btn-add").click(function(){
                //将该按失效
                $("#btn-add").linkbutton("disable");
            });
            $("#btn-add").dblclick(function(){
                //将该按失效
                $("#btn-add").linkbutton("disable");
            });
            */
            
            //参数一:字符串类型的事件,多个事件之间通过空格分隔,事件名称符合jquery事件名写法
            //参数二:处理函数
            $("#btn-add").bind("click dblclick",function(){
                //将该按失效
                $("#btn-add").linkbutton("disable");
            });
            
        </script>
四)Tabs选项卡
  1. 代码:
<!-- 容器面板 -->
        <div 
            id="tt" 
            class="easyui-tabs" 
            style="width:500px;height:250px;"
            data-options="plain:false,border:true,tools:[{
                    iconCls:'icon-add',
                    handler:function(){
                        alert('添加')
                    }
            },{
                    iconCls:'icon-remove',
                    handler:function(){
                        alert('删除')
                    }
            }],selected:-1">   
            
            <!-- 选项卡面板 -->
            <div title="Tab1" data-options="closable:true" style="padding:20px">   
                tab1    
            </div>   
            <div title="Tab2" data-options="closable:true" style="overflow:auto;padding:20px;">   
                tab2    
            </div>   
            <div title="Tab3" data-options="iconCls:'icon-reload',closable:true" style="padding:20px;">   
                tab3    
            </div>   
        </div>
  1. js调用:
<script type="text/javascript">
            $(document).ready(function(){
                $("#tt").tabs("add",{
                    "title":"Tab4",
                    "content":"tab4",
                    "selected":false,
                    "closable":true
                });
            });
        </script>
<script type="text/javascript">
     
        //定位四个按钮,同时添加单击事件
        $("a").click(function(){
            //获取按钮的文本
            var tip = $(this).text();
            //去空格
            tip = $.trim(tip);
            //如果是"增加部门"
            if("增加部门" == tip){
                //是否已有相同的tabs选项卡打开
                var flag = $("#tt").tabs("exists",tip);
                //如果不存在相同的tabs选项卡打开
                if(!flag){
                    //创建一个tabs选项卡
                    $("#tt").tabs("add",{
                        "title":tip,
                        "href":"${pageContext.request.contextPath}/addGroup.jsp",
                        "selected":true,
                        "closable":true
                    });
                }
            }
        });
     
     </script>
五)Pagination分页框
  1. 代码:
    <!-- 
        total:记录总数100
        pageSize:每页显示多少条记录5
        pageNumber:当前页号1
        pageList:[5,10,15]表示可供选择中每页显示多少条记录,
                          注意:pageSize的值必须是pageList数组值之一
     -->    
    <div 
        id="pp" 
        class="easyui-pagination" 
        data-options="total:100,pageSize:5,pageNumber:1,pageList:[5,10,15],showPageList:true,showRefresh:false,afterPageText:'页'" 
        style="background:#efefef;border:1px solid #ccc;width:400px">
    </div>
  1. js调用:
    <script type="text/javascript">
        $("#pp").pagination({
            //pageNumber当前页号,例如1 
            //pageSize获取多少条记录,例如:5
            //以上二个参数,需要谁,就接收谁,不一定二个都同时出现,参数名可以任意
            "onSelectPage":function(pageNumber,pageSize){
                alert(pageNumber + ":" + pageSize);
            }
        });
    </script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容

  • 写在前面:jQuery EasyUI 是一个基于 jQuery 的前端ui框架,集成了各种用户界面插件。可能有些同...
    nightZing阅读 5,053评论 0 4
  • 一. Java基础部分.................................................
    wy_sure阅读 3,785评论 0 11
  • 字符串回文判断 题目描述: 回文,英文palindrome,指一个顺着读和反过来读都一样的字符串,比如madam、...
    MinoyJet阅读 3,734评论 0 2
  • 美丽妆容始于清洁,终于清洁-----植村秀。 正确的卸妆顺序是:眼唇卸妆---->面部卸妆。 卸妆一定要眼唇和脸分...
    可可玛阅读 237评论 0 2
  • 下班公车 翻到一篇文章讲都江堰南桥的 那是最喜欢都江堰的地方 文章中出现了一座桥 便让我想到了那年和幺妹一起过的奈...
    边沿人阅读 245评论 0 1