`
yixibo
  • 浏览: 185682 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

jquery easyui DataGrid 数据表格 属性

 
阅读更多


来自 博客园 风流涕 (philoo.cnblogs.com) 翻译
 

扩展自 $.fn.panel.defaults ,用 $.fn.datagrid.defaults 重写了 defaults 

依赖

  • panel
  • resizable
  • linkbutton
  • pagination

用法

1.  <table id="tt"></table>  

 

1.  $('#tt').datagrid({   

2.      url:'datagrid_data.json',   

3.      columns:[[   

4.          {field:'code',title:'Code',width:100},   

5.          {field:'name',title:'Name',width:100},   

6.          {field:'price',title:'Price',width:100,align:'right'}   

7.      ]]   

8.  });  

数据表格(DataGrid)的特性

其特性扩展自 panel,下列是为 datagrid 增加的特性。

名称

类型

说明

默认值

columns

array

datagrid  column 的配置对象,更多详细请参见 column 的特性。

null

frozenColumns

array

和列的特性一样,但是这些列将被冻结在左边。

null

fitColumns

boolean

True 会自动扩大或缩小列的尺寸以适应表格的宽度并且防止水平滚动。

false

striped

boolean

True 就把行条纹化。(即奇偶行使用不同背景色)

false

method

string

请求远程数据的 method 类型。

post

nowrap

boolean

True 就会把数据显示在一行里。

true

idField

string

标识字段。

null

url

string

从远程站点请求数据的 URL

null

loadMsg

string

当从远程站点加载数据时,显示的提示信息。

Processing, please wait …

pagination

boolean

True 就会在 datagrid 的底部显示分页栏。

false

rownumbers

boolean

True 就会显示行号的列。

false

singleSelect

boolean

True 就会只允许选中一行。

false

pageNumber

number

当设置了 pagination 特性时,初始化页码。

1

pageSize

number

当设置了 pagination 特性时,初始化页码尺寸。

10

pageList

array

当设置了 pagination 特性时,初始化页面尺寸的选择列表。

[10,20,30,40,50]

queryParams

object

当请求远程数据时,发送的额外参数。

{}

sortName

string

定义可以排序的列。

null

sortOrder

string

定义列的排序顺序,只能用 'asc'  'desc'

asc

remoteSort

boolean

定义是否从服务器给数据排序。

true

showFooter

boolean

定义是否显示一行页脚。

false

rowStyler

function

返回例如 'background:red' 的样式,该函数需要两个参数:
rowIndex
 行的索引,从 0 开始。
rowData 此行相应的记录。

 

loadFilter

function

返回过滤的数据去显示。这个函数需要一个参数 'data' ,表示原始数据。

你可以把原始数据变成标准数据格式,此函数必须返回标准数据对象,含有 'total'  'rows' 特性。

 

editors

object

定义编辑行时的 editor 

预定义的 editor

view

object

定义 datagrid  view 

默认的 view

列(Column)的特性

DataGrid  Column 是一个数组对象,它的每个元素也是一个数组。数组元素的元素是一个配置对象,它定义了每个列的字段。

代码示例:

1.  columns:[[   

2.      {field:'itemid',title:'Item ID',rowspan:2,width:80,sortable:true},   

3.      {field:'productid',title:'Product ID',rowspan:2,width:80,sortable:true},   

4.      {title:'Item Details',colspan:4}   

5.  ],[   

6.      {field:'listprice',title:'List Price',width:80,align:'right',sortable:true},   

7.      {field:'unitcost',title:'Unit Cost',width:80,align:'right',sortable:true},   

8.      {field:'attr1',title:'Attribute',width:100},   

9.      {field:'status',title:'Status',width:60}   

10. ]]  

 

名称

类型

说明

默认值

title

string

列的标题文字。

undefined

field

string

列的字段名。

undefined

width

number

列的宽度。

undefined

rowspan

number

指一个单元格占据多少行。

undefined

colspan

number

指一个单元格占据多少列。

undefined

align

string

指如何对齐此列的数据,可以用 'left''right''center'

undefined

sortable

boolean

True 就允许此列被排序。

undefined

resizable

boolean

True 就允许此列被调整尺寸。

undefined

hidden

boolean

True 就隐藏此列。

undefined

checkbox

boolean

True 就显示 checkbox

undefined

formatter

function

单元格的格式化函数,需要三个参数: 
value
 字段的值。
rowData
 行的记录数据。
rowIndex 行的索引。

undefined

styler

function

单元格的样式函数,返回样式字符串来自定义此单元格的样式,例如 'background:red' 。此函数需要三个参数:
value
 字段的值。
rowData
 行的记录数据。
rowIndex
 行的索引。

undefined

sorter

function

自定义字段的排序函数,需要两个参数:
a
 第一个字段值。
b 第二个字段值。

undefined

editor

string,object

指编辑类型。当是 string 时指编辑类型,当 object 时包含两个特性: 
type
string,编辑类型,可能的类型是:

 texttextareacheckboxnumberboxvalidateboxdateboxcomboboxcombotree
options
:对象,编辑类型对应的编辑器选项。

undefined

编辑器(Editor

 $.fn.datagrid.defaults.editors 重写了 defaults

每个编辑器有下列行为:

名称

参数

说明

init

container, options

初始化编辑器并且返回目标对象。

destroy

target

如果必要就销毁编辑器。

getValue

target

从编辑器的文本返回值。

setValue

target , value

给编辑器设置值。

resize

target , width

如果必要就调整编辑器的尺寸。

例如,文本编辑器(text editor)像下面这样定义:

1.  $.extend($.fn.datagrid.defaults.editors, {   

2.      text: {   

3.          init: function(container, options){   

4.              var input = $('<input type="text" class="datagrid-editable-input">').appendTo(container);   

5.              return input;   

6.          },   

7.          getValue: function(target){   

8.              return $(target).val();   

9.          },   

10.         setValue: function(target, value){   

11.             $(target).val(value);   

12.         },   

13.         resize: function(target, width){   

14.             var input = $(target);   

15.             if ($.boxModel == true){   

16.                 input.width(width - (input.outerWidth() - input.width()));   

17.             } else {   

18.                 input.width(width);   

19.             }   

20.         }   

21.     }   

22. });  

数据表格视图(DataGrid View

 $.fn.datagrid.defaults.view 重写了 defaults

view 是一个对象,它告诉 datagrid 如何呈现行。这个对象必须定义下列方法。

名称

参数

说明

render

target, container, frozen

当数据加载时调用。
target
DOM 对象,datagrid 对象。
container
:行的容器。
frozen
:表示是否呈现冻结容器。

renderFooter

target, container, frozen

这是呈现行脚选项的函数。

renderRow

target, fields, frozen, rowIndex, rowData

这是选项的函数,将会被 render 函数调用。

refreshRow

target, rowIndex

定义如何刷新指定的行。

onBeforeRender

target, rows

视图被呈现前触发。

onAfterRender

target

视图被呈现后触发。

事件

其事件扩展自 panel,下列是为 datagrid 增加的事件。

名称

参数

说明

onLoadSuccess

data

当数据加载成功时触发。

onLoadError

none

加载远程数据发生某些错误时触发。

onBeforeLoad

param

发送加载数据的请求前触发,如果返回 false加载动作就会取消。

onClickRow

rowIndex, rowData

当用户点击一行时触发,参数包括: 
rowIndex
:被点击行的索引,从 0 开始。
rowData:被点击行对应的记录。

onDblClickRow

rowIndex, rowData

当用户双击一行时触发,参数包括: 
rowIndex
:被双击行的索引,从 0 开始。
rowData:被双击行对应的记录。

onClickCell

rowIndex, field, value

当用户单击一个单元格时触发。

onDblClickCell

rowIndex, field, value

当用户双击一个单元格时触发。

onSortColumn

sort, order

当用户对一列进行排序时触发,参数包括: 
sort
:排序的列的字段名
order
:排序的列的顺序

onResizeColumn

field, width

当用户调整列的尺寸时触发。

onSelect

rowIndex, rowData

当用户选中一行时触发,参数包括: 
rowIndex
:选中行的索引,从 0 开始
rowData
:选中行对应的记录

onUnselect

rowIndex, rowData

当用户取消选择一行时触发,参数包括: 
rowIndex
:取消选中行的索引,从 0 开始
rowData
:取消选中行对应的记录

onSelectAll

rows

当用户选中全部行时触发。

onUnselectAll

rows

当用户取消选中全部行时触发。

onBeforeEdit

rowIndex, rowData

当用户开始编辑一行时触发,参数包括: 
rowIndex
:编辑行的索引,从 0 开始
rowData
:编辑行对应的记录

onAfterEdit

rowIndex, rowData, changes

当用户完成编辑一行时触发,参数包括: 
rowIndex
:编辑行的索引,从 0 开始
rowData
:编辑行对应的记录
changes
:更改的字段/值对

onCancelEdit

rowIndex, rowData

当用户取消编辑一行时触发,参数包括: 
rowIndex
:编辑行的索引,从 0 开始
rowData
:编辑行对应的记录

onHeaderContextMenu

e, field

 datagrid 的头部被右键单击时触发。

onRowContextMenu

e, rowIndex, rowData

当右键点击行时触发。

方法

名称

参数

说明

options

none

返回 options 对象。

getPager

none

返回 pager 对象。

getPanel

none

返回 panel 对象。

getColumnFields

frozen

返回列的字段,如果 frozen 设定为 true,冻结列的字段被返回。

getColumnOption

field

返回指定列的选项。

resize

param

调整尺寸和布局。

load

param

加载并显示第一页的行,如果指定 param 参数,它将替换 queryParams 特性。

reload

param

重新加载行,就像 load 方法一样,但是保持在当前页。

reloadFooter

footer

重新加载脚部的行。

loading

none

显示正在加载状态。

loaded

none

隐藏正在加载状态。

fitColumns

none

使列自动展开/折叠以适应 datagrid 的宽度。

fixColumnSize

none

固定列的尺寸。

fixRowHeight

index

固定指定行的高度。

loadData

data

加载本地数据,旧的行会被移除。

getData

none

返回加载的数据。

getRows

none

返回当前页的行。

getFooterRows

none

返回脚部的行。

getRowIndex

row

返回指定行的索引,row 参数可以是一个行记录或者一个 id 字段的值。

getSelected

none

返回第一个选中的行或者 null

getSelections

none

返回所有选中的行,当没有选中的记录时,将返回空数组。

clearSelections

none

清除所有的选择。

selectAll

none

选中当前页所有的行。

unselectAll

none

取消选中当前页所有的行。

selectRow

index

选中一行,行索引从 0 开始。

selectRecord

idValue

通过 id 的值做参数选中一行。

unselectRow

index

取消选中一行。

beginEdit

index

开始对一行进行编辑。

endEdit

index

结束对一行进行编辑。

cancelEdit

index

取消对一行进行编辑。

getEditors

index

获取指定行的编辑器们。每个编辑器有下列特性:
actions
:编辑器能做的动作们。
target
:目标编辑器的 jQuery 对象。
field
:字段名。
type
:编辑器的类型。

getEditor

options

获取指定的编辑器, options 参数包含两个特性: 
index
:行的索引。
field
:字段名。

refreshRow

index

刷新一行。

validateRow

index

验证指定的行,有效时返回 true

updateRow

param

更新指定的行, param 参数包含下列特性:
index
:更新行的索引。
row
:行的新数据。

appendRow

row

追加一个新行。

insertRow

param

插入一个新行, param 参数包括下列特性:
index
:插入进去的行的索引,如果没有定义,就追加此新行。
row
:行的数据。

deleteRow

index

删除一行。

getChanges

type

获取最后一次提交以来更改的行,type 参数表示更改的行的类型,可能的值是:inserteddeletedupdated,等等。

 type 参数没有分配时,返回所有改变的行。

acceptChanges

none

提交自从被加载以来或最后一次调用acceptChanges以来所有更改的数据。

rejectChanges

none

回滚自从创建以来或最后一次调用acceptChanges以来所有更改的数据。

mergeCells

options

把一些单元格合并为一个单元格,options 参数包括下列特性:
index
:列的索引。
field
:字段名。
rowspan
:合并跨越的行数。
colspan
:合并跨越的列数。

showColumn

field

显示指定的列。

hideColumn

field

隐藏指定的列。

 

分享到:
评论
2 楼 chokee 2014-05-06  
有用
1 楼 Yaphis 2014-04-23  
就把API复制了一遍.有意义么?

相关推荐

    jquery easyui datagrid demo

    Datagrid 是 jQuery EasyUI 中一个强大的数据展示组件,常用于表格数据的展示和操作,支持分页、排序、过滤、编辑等功能。通过阅读这份文档,我们可以了解 Datagrid 的基本配置和高级特性,以及如何与后端数据源进行...

    easyui datagrid 数据导出到Excel

    在IT行业中,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如排序、分页、过滤等。在实际工作中,我们经常需要将这些展示的数据导出到Excel文件,以便进行进一步的分析或存储。下面...

    jQuery EasyUI编辑DataGrid用combobox实现多级联动

    在jQuery EasyUI中,DataGrid是一种常用的表格展示控件,它可以与各种编辑器结合使用,如combobox(下拉框)来实现更丰富的交互功能。本文主要探讨的是如何利用jQuery EasyUI的DataGrid和combobox组件实现多级联动的...

    easyui DataGrid 数据表格 属性

    EasyUI 是一个基于 jQuery 的 UI 插件集合体,它提供了丰富的用户界面组件,包括 DataGrid,这是一个用于展示数据的表格组件。DataGrid 具有众多可配置的属性,可以帮助开发者构建功能强大的数据展示和管理界面。这...

    JqueryEasyUI DataGrid例子

    综上所述,这个 JqueryEasyUI DataGrid 示例展示了如何使用前端框架与后端服务器配合,实现一个功能完备的表格应用。在实际开发中,开发者可以根据需求调整 DataGrid 的配置项,以及后台 Servlet 的逻辑,以适应各种...

    easyui datagrid 表格 打印

    标题“easyui datagrid表格打印”关注的就是如何解决这个问题,即如何将经过formatter处理后的数据在打印时保持原有的格式。 在描述中提到的“支持formatter格式化数据的打印”,指的是Datagrid中用于数据美化和...

    解决EasyUIdataGrid列比较多,无数据,列展现不全

    其中,dataGrid是EasyUI中一个非常重要的组件,用于展示表格数据,支持排序、分页等功能。但在某些情况下,当表格列数过多且没有数据时,可能会出现列显示不全的问题。 #### 二、问题分析 ##### 1. 原因分析 出现...

    easyui datagrid editor回车切换单元格示例,可参考

    easyui datagrid editor回车切换单元格示例,适合熟悉easyui但又不懂如何做的人员,可能参考一下源码JS。

    jquery easyui datagrid 教程

    jQuery EasyUI Datagrid 是一个基于 jQuery 和 EasyUI 框架的数据网格组件,它提供了丰富的数据展示和操作功能,常用于构建数据密集型的Web应用。这个教程将深入讲解其核心概念、用法以及常见应用。 一、jQuery ...

    JS EasyUI DataGrid动态加载数据

    JS EasyUI DataGrid是一款基于jQuery和EasyUI框架的数据表格组件,它提供了丰富的功能,如数据分页、排序、过滤和自定义操作等。在实际应用中,动态加载数据是DataGrid的一个重要特性,允许用户在需要时加载更多的...

    easyui datagrid 增加鼠标悬停弹窗事件

    EasyUI的Datagrid是一个强大的表格组件,它可以显示大量数据并支持排序、分页、过滤和编辑等功能。在Web应用中,Datagrid常用于展示结构化的数据,使用户能够高效地浏览和操作信息。 2. **鼠标悬停事件**: 在...

    jquery easyui datagrid demo 详解

    jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列丰富的组件,使得开发者可以轻松构建用户界面,而 Datagrid 是其中非常重要的一个组件,常用于数据展示和管理。本篇文章将详细解析 jQuery EasyUI ...

    easyui datagrid 动态隐藏显示列

    jquery easyui 扩展 datagrid 自定义动态隐藏显示列

    EasyUI DataGrid过滤用法实例

    EasyUI 是一个基于 jQuery 的 UI 框架,它提供了丰富的组件,包括表格(DataGrid)等,使得 Web 应用程序的界面开发更加便捷。在这个"EasyUI DataGrid 过滤用法实例"中,我们将深入探讨如何利用 EasyUI 的 DataGrid ...

    easyui datagrid 右冻结

    EasyUI是一个基于jQuery的UI库,提供了丰富的组件,包括datagrid,它是一个用于展示表格数据的组件。在某些场景下,用户可能希望在滚动表格时,某些重要的列(通常是标题或标识列)始终保持可见,这就是“右冻结”的...

    easyui datagrid 多条件筛选 可复选 类似淘宝筛选

    首先,`datagrid`是EasyUI中的一个核心组件,它用于展示数据表格,支持分页、排序、过滤等多种操作。在实现多条件筛选时,我们需要对datagrid的`columns`属性进行配置,定义每一列的显示方式和筛选条件。例如,我们...

    jQuery EasyUI datagrid实现本地分页的方法

    jQuery EasyUI datagrid是一个基于jQuery和EasyUI的UI组件库,提供了丰富的界面组件,其中的datagrid组件用于创建数据表格。 传统的分页方法通常是由后端服务器完成,即将全部数据检索出来后,由服务器端根据分页...

    easyui的datagrid生成合并行,合计计算价格

    在描述中提到的"easyui的datagrid生成合并行,合计计算价格",指的是如何使用EasyUI的DataGrid组件来实现表格数据的行合并以及总价的计算功能。以下是对这个知识点的详细解释: 1. EasyUI DataGrid组件: EasyUI的...

    jQuery Easyui DataGrid点击某个单元格即进入编辑状态焦点移开后保存数据

    jQuery Easyui DataGrid 是一个基于 jQuery 的用户界面插件,它提供了一种简单的方式来展示和编辑表格数据。DataGrid 组件支持分页、排序、搜索、和可编辑等功能。本文介绍了如何在 jQuery Easyui DataGrid 中实现...

    在jquery easyui中的datagrid中添加searchbox!

    在jQuery EasyUI中,`datagrid`是一个非常常用的组件,它用于展示数据表格,具有丰富的功能和良好的用户体验。而`searchbox`则是为了增强`datagrid`的搜索功能,让用户能够更方便地查找表格中的特定数据。在标题和...

Global site tag (gtag.js) - Google Analytics