jquery easyui datagraid 对象显示的方法与datagraid、分页、复选框多选的数据显示
========================jsp==============================
<table id="dg" fit="true" width="100%">
<thead>
<tr>
<th field="aguid" hidden="true">主键</th>
<th field="ck" checkbox="true"></th>
<th field="aname" sortable="true">用户名</th> <!--sortable="true",这个属性是用户点击标题可以排序-->
<th field="guid_job" sortable="true" formatter="formatterJob.Formatter_job">职位</th><!--这里直接写对象名,formatterJob.Formatter_job获取职务的名称-->
<th field="guid_bm" sortable="true" formatter="formatterBm.Formatter_bm">部门</th><!--这里直接写对象名,formatterBm.Formatter_bm获取部门的名称-->
<th field="mobilephone" sortable="true">手机</th>
<th field="email" sortable="true">邮箱</th>
<th field="isworking" sortable="true" formatter="formatterStatus.Formatter_status">状态</th><!--formatterStatus.Formatter_status格式化数据-->
<th field="isoperator" formatter="formatterisIsoperator.Formatter_isoperator">是否允许登录</th><!--formatterisIsoperator.Formatter_isoperator格式化数据-->
<th field="操作" formatter="datagridformatter.operformatter">操作</th><!--datagridformatter.operformatter在表格的最后一格添加功能按钮-->
</tr>
</thead>
<script>
// 初始化表格数据
function loadinit() {
$('#dg').datagrid({
url : '/jubcrm/index/qryUser.hml',//返回后台路径
idField : 'aguid',
pagination : true,
rownumbers : true,
singleSelect : false
});
}
</script>
===============js===============
//格式化datagrid获取对象的属性名称bm
var formatterBm = {
Formatter_bm : function(val, rec, index) {
if (val == undefined) {
return "";
}
return rec.guid_bm.aname;//返回部门名称(部门是一个对象即用户的外键)
}
};
//格式化datagrid获取对象的属性名称job
var formatterJob = {
Formatter_job : function(val, rec, index) {
if (val == undefined) {
return "";
}
return rec.guid_job.aname;//返回职务名称(职务是一个对象即用户的外键)
}
};
//格式化datagrid获取对象的属性名称isworking,该值是true或者false在jsp中需要转换成中文的格式
var formatterStatus = {
Formatter_status : function(val, rec, index) {
if (val == undefined) {
return "";
}
if(val==false){
return "在职";
}else if(val==true){
return "离职";
}
}
};
//格式化datagrid获取对象的属性名称是否操作员,该值是true或者false在jsp中需要转换成中文的格式
var formatterisIsoperator = {
Formatter_isoperator : function(val, rec, index) {
if (val == undefined) {
return "";
}
if(val==true){
return "允许登录";
}else{
return "禁止登录";
}
}
};
var datagridformatter = {
operformatter : function (val, row, index) {
var e = '<a href="#" onclick="editrow(' + index + ')">编辑</a> ';
var d = '<a href="#" onclick="deleterow(' + index + ')">删除</a>';
return e + d;
}
};
================================java后台代码======================================
===========================业务层servicesImpl==================
// 用户管理查询用户信息
@SuppressWarnings("unchecked")
public String qrypage(Pubuser pub, String page, String rows, String order,String sort) {
StringBuffer jql = new StringBuffer();
jql.append(" 1=1 ");
if (szf == 65536) {
jql.append(" and status = " + szf);
} else if (szf == 0) {
jql.append(" and (status=0 or status is null) ");
}
Boolean sxz = pub.getIsxz();
if (sxz != null) {
jql.append(" and isxz = " + sxz);
}
long total = pubbasedao.getCount(Pubuser.class, jql.toString(), null);//查询总记录数
int pagenum = 1;
if (!page) {
pagenum =page;
}
int rowsnum = JToolType.defrowsnum;
if (!rows) {
rowsnum = rows;
}
if (order) {
order = "DESC";
}
if (sort) {
sort = "date_in";
}
LinkedHashMap<String, String> ordermap = new LinkedHashMap<String, String>();
if (!order) {
ordermap.put(sort, order);
}
List<Pubuser> lstrows = pubbasedao.qryPage(Pubuser.class, pagenum,
rowsnum, jql.toString(), null, ordermap);//查询数据
return formatDataGridPage(total, lstrows);
}
/**
* 格式化Controller返回DataGrid分页数据<br>
* lstrows必须为list
* fastjson-1.1.33.jar
*/
public static String formatDataGridPage(long total, Object lstrows) {
Map<String, Object> result = new HashMap<String, Object>();
result.put("total", total);
result.put("rows", lstrows);
return parse2JSON(result);
}
=============dao,我这里用的是JPA,如果是ssh用户基本一样=======================
@Override
public List<T> qryPage(Class<T> clazz, int firstindex, int maxresult,
String whQl, Object[] params, LinkedHashMap<String, String> orderby) {
Query q = em.createQuery("SELECT u FROM " + clazz.getSimpleName()
+ " u " + (whQl ? "" : " where " + whQl)
+orderby);
setQueryParams(q, params);
if (firstindex >= 0) {
// q.setFirstResult(firstindex);
q.setFirstResult((firstindex - 1) * maxresult);
}
if (maxresult > 0) {
q.setMaxResults(maxresult);
}
return q.getResultList();
}
public void setQueryParams(Query query, Object[] params) {
try {
if (params != null && params.length > 0) {
for (int i = 0; i < params.length; i++) {
query.setParameter(i + 1, params[i]);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
==============================控制层action,我用的是springMVC=======================================
@Controller
@RequestMapping("index")
public class PubuserAction {
@Autowired
public PubuserServices pub;
// 刷新信息
@RequestMapping("qryUser")
public void qryUser(Pubuser pubuser, HttpServletRequest request,
HttpServletResponse response) throws IOException {
Pubuser us = (Pubuser) request.getSession().getAttribute(
JToolType.AttributeUserName);
pubuser.setGuid_gs(us.getGuid_gs());
String rslt = pub.qrypage(pubuser, request.getParameter("page"),
request.getParameter("rows"), request.getParameter("order"),
request.getParameter("sort"));
response.getWriter().write(rslt);
response.getWriter().close();
}
jquery easyui datagraid 对象显示的方法与datagraid、分页、复选框多选的数据显示的更多相关文章
- js进阶课程 12-9 jquery的事件对象event的方法有哪些?
js进阶课程 12-9 jquery的事件对象event的方法有哪些? 一.总结 一句话总结:三组六个,阻止默认事件一组,阻止冒泡一组,阻止冒泡和剩余事件一组. 1.事件的默认动作指什么? 比如点a标 ...
- jQuery 前端复选框 全选 反选 下拉菜单联动
jQuery 页面中复选框全选.反选.下拉联动(级联) <!DOCTYPE html> <html lang="en"> <head> < ...
- Jquery表格变色 复选框全选,反选
/*jquery静态表格变色*/ $(".tr2").mouseover(function(){ $(this).css("background"," ...
- jQuery 复选框全选/取消全选/反选
jQuery实现的复选框全选/取消全选/反选及获得选择的值. 完整代码: <!DOCTYPE html> <html> <head> <script type ...
- jQuery中的几个案例:隔行变色、复选框全选和全不选
1 表格隔行变色 1 技术分析: 1 )基本过滤选择器: odd: even: 2 )jq添加和移除样式: addClass(); removeClass(); 2 代码实现 <script s ...
- [js]jQuery EasyUI的linkbutton组件disable方法无法禁用jQuery绑定事件的问题分析
问题由来 linkbutton 是 jQuery EasyUI 中常用的一个控件,可以使用它创建按钮.用法很简单,使用 a 标签给一个easyui-linkbutton 的class就可以了. < ...
- jquery easyui菜单树显示
目前做了一个easyui项目需要显示多级菜单,菜单配置到数据库中,因此每级菜单都需要到数据库中取,用了jQuery EasyUI方便多了. 效果体验:http://hovertree.com/texi ...
- 表格中的checkbox复选框 全选非全选 公共方法 及提交选中结果
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 用jquery实现复选框全选全不选问题(完整版),在网络上怎么也找不到完整的解决方案,重要搞全了
首先准备jsp页面控件: 请选择您的爱好:<br> <input type="checkbox" id="all" name="se ...
随机推荐
- redis接入sentinelPool的配置
package com.netease.mobile.commonUtil; import java.util.ArrayList; import java.util.HashSet; import ...
- 代码记录:使用Aforge.net让视频图像反转180度
private void CameraConn() { videoSource = new VideoCaptureDevice(videoDevices[tscbxCameras.SelectedI ...
- 【英语】Bingo口语笔记(40) - [aʊ]的发音规则
[aʊ]的发音规则 先发音标的音再去拼出单词的读音down
- python知识:json格式文本;异常处理;字符串处理;unicode类型和str类型转换
python进程中的实例和json格式的字符串之间的映射关系是非常直接的,相当于同一个概念被编码成不同的表示: stream in json form ----json.loads(str)----- ...
- liunx的目录结构
linux目录结构的最顶端是/目录 我们一般都称为root目录. linux有四种文件类型,分别是普通文件,目录文件,连接文件,特殊文件,可以用file来识别. 普通文件:文本文件 二进制文件 图像文 ...
- Pig实战
1. pig简介 2. 安装pig 3. 实战pig 4. 深入pig 5. 参考资料及代码下载 <1>. Pig简介 pig是hadoop项目的一个拓展项目, 用以简化hadoop编程 ...
- 前台实现下载xml功能
阅读目录 介绍问题 MIME TYPE 解决问题 介绍问题 平时我们通过href去链接文件时,一般情况是对于zip.jar等下载功能,而对于xml.css.html.js等都是查看功能. 现在下面的代 ...
- ios import和@class的区别
二者的区别在于: 1.import会包含这个类的所有信息,包括实体变量和方法,而@class只是告诉编译器,其后面声明的名称是类的名称,至于这些类是如何定义的,暂时不用考虑,后面会再告诉你. 2.在头 ...
- 点击li,点击的li添加class,其余去掉class
点击li,点击的li添加class,其余去掉class <script type="text/javascript"> $(function () { var liob ...
- 软件测试——boost单元测试 C++
分类: 1. 下载安装Boost 2. 在vs2010 中设置 工具->选项->vc++目录 设置包含文件目录:找到解压的boost文件夹eg:C:\boost_1_43_03. ...