转:http://www.cnblogs.com/archie2010/archive/2011/01/17/1937327.html,有增加
最近,在项目中用到JQuery EasyUI
DataGrid,虽然它封装了表格的实现,为我们提供很多便利,但是在使用的过程中,还是会遇到一些困难和问题。目前,问题都已经解决,特分享我使用
DataGrid开发的经验。(PS:我用的是JSP和J2EE框架开发)。
1.数据的提取和显示。
DataGrid是通过url属性获取数据的。例如:url:'ListInfo.action'
,这样通过调用Action中的方法获取数据。返回的是JSON字串。注意,JSON字串必须按照DataGrid定义的数据格式进行拼装。这种数据格式,可以参考我前面的文章中的附件。特别强调的是,JSON字串中的total域的值是数据的条数,用于数据的分页。
2.数据的分页。
数据的分页分为前台分页和后台分页,前台分页,DataGrid已经封装好了。
DataGrid定义了两个参数:
rows(每页的条数),page(当前的页数),这两个参数分别对应属性pageSize,pageNumber。用户可以在
pageSize,pageNumber属性中设置,也可以不设置,这样就取默认值。我们只需在Action中定义两个变量,private int
rows; private int page; 接着通过SQL语句获取需要取的值。分页的SQL语句(Oracle)如下:
1
.
select
*
from
(
2
.
select
rownum r, field1,field2
from
table_name
where
rownum
<=
page
*
rows(
3
. )
4
.
where
r
>
(page
-
1
)
*
rows
这样提取的数据的条数赋值给total域,拼装在JSON字串中返回,就可以实现分页了。当然,pagination:true,
是当然需要的。
在controller层获取每页的行数和当前多少页,用如下方法:
pageSize = Integer.parseInt(request.getParameter("rows")
.toString());
pageNo = Integer.parseInt(request.getParameter("page")
.toString());
3.数据的操作。
数据的操作大致可分为:查看,删除。对于查看,我们可以通过onClickRow或onDblClickRow事件实现。如:
$(
function
(){
$(
'
#test
'
).datagrid({
title:
'
数据列表
'
,
width:
900
,
height:
500
,
.......(省略的属性)
onDblClickRow:
function
() {
var
selected
=
$(
'
#test
'
).datagrid(
'
getSelected
'
);
if
(selected){
window.open(
"
DataView.action?Id=
"
+
selected.ID);
}}
这样双击就可以查看了。
关于删除,可以通过点击删除按钮,调用删除方法来实现。删除按钮可以在拼装JSON字串的时候,赋值给OPERATION域,这样设置{field:'OPERATION',title:'操作',width:120},就可以在页面上显示删除按钮了。删除的实现,如下:
代码
function
DelAff(){
$.messager.confirm(
'
确认
'
,
'
是否真的删除?
'
,
function
(r){
if
(r){
var
selected
=
$(
'
#test
'
).datagrid(
'
getSelected
'
);
if
(selected){
var
index
=
$(
'
#test
'
).datagrid(
'
getRowIndex
'
, selected);
$(
'
#test
'
).datagrid(
'
deleteRow
'
, index);
DeleteSubmit(selected);
}
}
});
}
function
DeleteSubmit(selected)
{
var
url
=
"
DataDelete.action?Id=
"
+
selected.ID;
$.post(
url
);
}
这样页面的删除和数据库中的删除都实现了。
另参见:http://www.cnblogs.com/zgqys1980/archive/2011/01/04/1925775.html
http://www.jeasyui.com/documentation/datagrid.php
分享到:
相关推荐
这个“jquery easyui datagrid demo”包含了一些关于如何使用 jQuery EasyUI 中 Datagrid 组件的示例和相关文档,帮助我们理解和应用 Datagrid。 首先,`datagrid.doc` 文件很可能是 Datagrid 的简要说明文档,它...
jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) Demo 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停离开事件,源码奉献!!!
jquery easyui datagrid 性能优化,优化后可快速提升查询性能。唯一的缺陷就是不支持可编辑grid了。只需要在引入easyui.js后面引入此js即可。
综上所述,这个 JqueryEasyUI DataGrid 示例展示了如何使用前端框架与后端服务器配合,实现一个功能完备的表格应用。在实际开发中,开发者可以根据需求调整 DataGrid 的配置项,以及后台 Servlet 的逻辑,以适应各种...
jQuery EasyUI Datagrid 是一个基于 jQuery 和 EasyUI 框架的数据网格组件,它提供了丰富的数据展示和操作功能,常用于构建数据密集型的Web应用。这个教程将深入讲解其核心概念、用法以及常见应用。 一、jQuery ...
jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列丰富的组件,使得开发者可以轻松构建用户界面,而 Datagrid 是其中非常重要的一个组件,常用于数据展示和管理。本篇文章将详细解析 jQuery EasyUI ...
在jQuery EasyUI中,DataGrid是一种常用的表格展示控件,它可以与各种编辑器结合使用,如combobox(下拉框)来实现更丰富的交互功能。本文主要探讨的是如何利用jQuery EasyUI的DataGrid和combobox组件实现多级联动的...
JQuery EasyUI DataGrid服务端分页加载数据后,DataGrid行号不能延续,总是重新由1开始。因为服务端分页取回的是单页数据,通过LoadData方法加载数据后,pageNumber属性被初始化为1,因此行号总是重新由1开始。现在...
在IT行业中,EasyUI Datagrid是一款基于jQuery的前端数据展示组件,它提供了丰富的表格功能,如排序、分页、过滤等。在实际工作中,我们经常需要将这些展示的数据导出到Excel文件,以便进行进一步的分析或存储。下面...
jQuery EasyUI datagrid是一个基于jQuery和EasyUI的UI组件库,提供了丰富的界面组件,其中的datagrid组件用于创建数据表格。 传统的分页方法通常是由后端服务器完成,即将全部数据检索出来后,由服务器端根据分页...
easyui datagrid editor回车切换单元格示例,适合熟悉easyui但又不懂如何做的人员,可能参考一下源码JS。
jQuery Easyui DataGrid 是一个基于 jQuery 的用户界面插件,它提供了一种简单的方式来展示和编辑表格数据。DataGrid 组件支持分页、排序、搜索、和可编辑等功能。本文介绍了如何在 jQuery Easyui DataGrid 中实现...
EasyUI是一个基于jQuery的用户界面插件集合,它简化了Web应用的前端开发工作,使得开发者能够更加专注于业务逻辑的实现而非UI的构建。其中,dataGrid是EasyUI中一个非常重要的组件,用于展示表格数据,支持排序、...
jquery EasyUI DataGrid 实现批量删除和批量添加和批量更新,减少服务器交互
在jQuery EasyUI中,datagrid是一个常用的组件,用于展示表格数据并提供各种操作功能。在实际应用中,我们可能需要在用户翻页后仍然保持选择的行的状态,即记录被选中的行。这个问题可以通过监听datagrid的事件和...
本文详细讲解了如何使用jQuery easyui datagrid组件进行动态查询数据的过程。具体来说,文章将从前端界面接受查询条件,通过后端PHP代码与MSSQL数据库交互,并返回JSON格式的数据展示在easyui datagrid中。这个过程...
该列设为超链接,点击时向调用的js方法传参。 return "(parameter)/>这里onclick的参数是怎么传的呢
jQuery easyui dataGrid 动态改变排序字段名,一般情况下,在使用的时候,我们会点击相应字段进行排序,这里以JAVA为例,后端的实体类字段有可能和数据库的字段不一致; 如:实体类中的属性为userName,前台filed=...
在IT行业中,EasyUI是一个基于JavaScript和jQuery的前端框架,它提供了一系列的UI组件,用于构建用户界面。在描述中提到的"easyui的datagrid生成合并行,合计计算价格",指的是如何使用EasyUI的DataGrid组件来实现...