LigerUI的简单使用示例

简介:

一 LigerUI简介

LigerUI 是基于jQuery 的UI框架,其核心设计目标是快速开发、使用简单、功能强大、轻量级、易扩展。简单而又强大,致力于快速打造Web前端界面解决方案,可以应用于.net,jsp,php等等web服务器环境。

LigerUI有如下主要特点:

  • 使用简单,轻量级

  • 控件实用性强,功能覆盖面大,可以解决大部分企业信息应用的设计场景

  • 快速开发,使用LigerUI可以比传统开发减少极大的代码量

  • 易扩展,包括默认参数、表单/表格编辑器、多语言支持等等

  • 支持Java、.NET、PHP等web服务端

  • 支持 IE6+、Chrome、FireFox等浏览器

  • 开源,源码框架层次简单易懂

(PS:以上简介来至官网)


二 一个最简单的Demo

(1)从官网下载最新版的LigerUI,目前的下载地址是:http://pan.baidu.com/s/1dDNAc7Z

(2)新建一个Java web项目,并将LigerUI的一些东西复制到项目中,比如说这样:

wKiom1cc4BHh4L-qAAA3SFG5axs238.png

(3)最简单的demo,文件名是:demo1.jsp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
<%
     String path = request.getContextPath();
     String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
             + path + "/";
%>
< html >
< head >
< meta  http-equiv = "Content-Type"  content = "text/html; charset=UTF-8" >
< base  href="<%=basePath%>">
< title >Insert title here</ title >
< link  href = "scripts/ligerUI/skins/Aqua/css/ligerui-all.css"
     rel = "stylesheet"  type = "text/css"  />
< script  src = "scripts/jquery/jquery-1.9.0.min.js"  type = "text/javascript" ></ script >
< script  src = "scripts/ligerUI/js/core/base.js"  type = "text/javascript" ></ script >
< script  src = "scripts/ligerUI/js/plugins/ligerTextBox.js"
     type = "text/javascript" ></ script >
< script  type = "text/javascript" >
     $(function() {
         //将一个html文本框对象转换成ligerui文本框对象,并返回ligerui对象
         var g = $("#txt1").ligerTextBox({
             //如果没有输入时,会提示不能为空
             nullText : '不能为空',
             onChangeValue : function(value) {
                 alert(value);
             }
         });
 
         /*
         获取属性
          */
         //alert('方式一:' + g.get('disabled'));
         /*
            如何调用方法
          */
         //g.setDisabled();
         /*
             如何设置事件
          */
         //这里给文本框绑定一个改变值的事件
         //也可以设置onChangeValue参数
         /*
         g.bind('changeValue',function(value){
             alert(value);
         });
          */
 
     });
</ script >
 
</ head >
< body  style = "padding: 10px" >
     < input  type = "text"  id = "txt1"  value = ""  style = "width: 200px"  />
</ body >
</ html >

从上面的代码可以看出,先是引入了几个jquery和ligerui的js文件,然后从用法上来说跟jQuery是很相似的,针对

TextBox进行了简单使用


三 使用本地数据建立表格

ligerGrid可以用来显示表格,ligerGrid绑定数据有两种方式,一是使用本地数据,一是使用服务器数据。其中使用本地数据需要配置data参数;使用服务器数据需要配置url参数,我这里以使用本地数据建立表格来简要说明,也就是上面图中的demo2.jsp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
<%
     String path = request.getContextPath();
     String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
             + path + "/";
%>
< html >
< head >
< meta  http-equiv = "Content-Type"  content = "text/html; charset=UTF-8" >
< base  href="<%=basePath%>">
< title >Insert title here</ title >
< link  href = "scripts/ligerUI/skins/Aqua/css/ligerui-all.css"
     rel = "stylesheet"  type = "text/css"  />
< script  src = "scripts/jquery/jquery-1.9.0.min.js"  type = "text/javascript" ></ script >
< script  src = "scripts/ligerUI/js/ligerui.min.js"  type = "text/javascript" ></ script >
< script  type = "text/javascript" >
     $(function() {
         //本地数据
         var griddata = [ {
             id : '01',
             name : '测试01'
         }, {
             id : '02',
             name : '测试02'
         }, {
             id : '03',
             name : '测试03'
         }, {
             id : '04',
             name : '测试04'
         }, {
             id : '05',
             name : '测试05'
         }, {
             id : '06',
             name : '测试06'
         }, {
             id : '07',
             name : '测试07'
         } ];
         //表格,向id为"maingrid"的div里面添加一个表格
         var grid = $("#maingrid").ligerGrid({
             //每行前面的选择框
             checkbox : true,
             //每一列的数据显示,包括显示的表头名,列宽,列单元格数据等
             columns : [ {
                 name : 'id',
                 display : '序号',
                 width : 200
                 /*
                 //列汇总
                 totalSummary: {
                     align: 'center',   //汇总单元格内容对齐方式:left/center/right 
                     type: 'count',     //汇总类型sum,max,min,avg ,count。可以同时多种类型
                     render: function (e) {  //汇总渲染器,返回html加载到单元格
                         //e 汇总Object(包括sum,max,min,avg,count) 
                         return "< div >总数:" + e.count + "</ div >";
                     }
                 }
                 */
             }, {
                 name : 'name',
                 display : '名称',
                 width : 400,
                 /*
                 //列汇总
                 totalSummary: {
                     align: 'center',   //汇总单元格内容对齐方式:left/center/right 
                     type: 'count',     //汇总类型sum,max,min,avg ,count。可以同时多种类型
                     render: function (e) {  //汇总渲染器,返回html加载到单元格
                         //e 汇总Object(包括sum,max,min,avg,count) 
                         return "< div >总数:" + e.count + "</ div >";
                     }
                 }
                 */
                 /*
                 自定义单元格显示的数据
                 rowdata   行数据
                 rowindex 行索引
                 value    当前的值,对应rowdata[column.name]
                 column   列信息
                 */
                 render : function(rowdata,rowindex,value,column){
                     return rowdata.id + "--" + value + "--" + column.width;
                 }
             } ],
             //往表格填充的本地数据
             data : {
                 Rows : griddata
             },
             //默认选中示例
             isChecked: function(rowdata){
                 if(rowdata.id  == '04')
                     return true;
                 return false;
             }
         });
     });
     
</ script >
</ head >
< body  style = "padding: 10px" >
     < div  id = "maingrid" ></ div >
     
</ body >
</ html >

效果如下:

wKiom1cc4HOCYdlzAAA3yM1jQDM958.png

注:上面的Rows表示的是“数据源字段名”,定义在ligerUI/js/plugins/ligerGrid.js这个文件中,包括我们进行数据分页显示时常用到的“pagesize”、“sortname”和“sortorder”也是定义在这个文件中的

wKioL1cc4WCB8tIiAACtQiLnVBw346.png

因此,在知道了字段名之后我们就可以进行自定义数据源的字段名了,比如说下面这样:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var  grid = $( "#maingrid" ).ligerGrid({
             checkbox :  true ,
             //自定义数据源字段名
             root :  'row'  ,
             columns : [ {
                 name :  'id' ,
                 display :  '序号' ,
                 width : 200
                 
             }, {
                 name :  'name' ,
                 display :  '名称' ,
                 width : 400
                 
                 
             } ],
             data : {
                 row : griddata
             }
         });

当然,其他的一些字段名也可以根据这个原理进行自定义设置


本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1767349,如需转载请自行联系原作者

相关文章
|
3月前
|
JavaScript 前端开发 容器
js---Echarts水球图的简单使用方法(ecarts官方插件)
js---Echarts水球图的简单使用方法(ecarts官方插件)
38 0
|
4月前
Swiper插件的基本使用方法和案例(二)
Swiper插件的基本使用方法和案例
|
4月前
|
JavaScript 前端开发 编译器
Swiper插件的基本使用方法和案例(一)
Swiper插件的基本使用方法和案例
|
7月前
|
JavaScript
jquery多图片上传预览demo效果示例(整理)
jquery多图片上传预览demo效果示例(整理)
|
7月前
|
JavaScript
js渐变导航demo效果示例(整理)
js渐变导航demo效果示例(整理)
|
7月前
|
前端开发
css加载中,请稍后....demo示例(整理)
css加载中,请稍后....demo示例(整理)
|
8月前
|
JavaScript 机器人 vr&ar
19 个最佳Three.JS 示例
分享threejs.org 的 19个最佳三个 JS 示例
245 0
19 个最佳Three.JS 示例
|
10月前
|
JavaScript 前端开发 C++
JavaScript 调用 C++/Qt 工程(附有代码 + demo)
JavaScript 调用 C++/Qt 工程(附有代码 + demo)
|
存储 前端开发 JavaScript
前端 CSS 变量简介及基本使用方法
复杂的网站都会有大量的CSS代码,通常也会有许多重复的值。
163 0
前端 CSS 变量简介及基本使用方法
|
JavaScript 前端开发 容器
如何优雅的使用Vuepress编写组件示例(上)👈
如何优雅的使用Vuepress编写组件示例(上)👈
如何优雅的使用Vuepress编写组件示例(上)👈