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 ...
随机推荐
- dede栏目调用大全
A:侧边栏常用的当前栏目的父栏目调用(5.7) 1.在include/common.inc.php增加函数 function getTopCategoryName($cid=0) { global $ ...
- Dataguard后台进程解析
Log Transport Service 主节点上,日志传输服务主要使用如下几个进程: 1.LGWR LGWR搜集事务日志,并且更新联机日志.在同步模式下,LGWR直接将redo信息直接 ...
- 【UVa-679】小球下落——二叉树的编号
在结点1处放一个小球,它会往下落.每个内结点上都会有一个开关,初始全部关闭,当每次有小球落到一个开关上时,状态都会改变.当小球到达一个结点是,如果结点上的开关关闭,则往左走,否则往右走,直到走到叶子的 ...
- linux 安装SVN
1.环境centos6.4 2.安装svnyum -y install subversion 3.配置 建立版本库目录mkdir /www/svndata svnserve -d -r /www/sv ...
- c# is和as的区别
关于类型的判断和转换有is和as这2个操作符.具体区别和用法如下is就是处于对类型的判断.返回true和false.如果一个对象是某个类型或是其父类型的话就返回为true,否则的话就会返回为false ...
- C++ STL算法系列6---copy函数
现在我们来看看变易算法.所谓变易算法(Mutating algorithms)就是一组能够修改容器元素数据的模板函数,可进行序列数据的复制,变换等. 我们现在来看看第一个变易算法:元素复制算法copy ...
- Golang 绘图技术(image/draw包介绍)
image/draw 包仅仅定义了一个操作:通过可选的蒙版图(mask image),把一个原始图片绘制到目标图片上,这个操作是出奇的灵活,可以优雅和高效的执行很多常见的图像处理任务. 1 ...
- 如何配置Drupal数据库信息?
Drupal的数据库连接信息通过文件settings.php中的变量$databases设置.变量$databases是一个二维的数组,第一维称为key,第二维称为target.使用这种方式可以处理多 ...
- unittest框架的注意点
这篇并不是讲unittest如何使用,而是记录下在和htmltestrunner集成使用过程中遇到的一些坑,主要是报告展示部分. 我们都知道python有一个单元测试框架pyunit,也叫unitte ...
- linux 常用端口列表
常见端口表汇总 1 tcpmux TCP Port Service Multiplexer 传输控制协议端口服务多路开关选择器 2 compressnet Management Utility com ...