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 ...
随机推荐
- appserver配置虚拟主机
1, apach配置文件开启虚拟主机服务(C:\AppServ\Apache2.2\conf\httpd.conf)大概561行的位置 # Virtual hostsInclude conf/extr ...
- BPMN2新规范与Activiti5
上世纪九十年代以后,随着WfMC联盟的成立,BPM市场群雄逐鹿如火如荼,工作流技术得到了突飞猛进的发展,其中IBM.Oracle等大型软件厂商在工作流领域各扯大旗割据一方.2011年BPMN2.0新规 ...
- javascript对象定义和操作
//js对象定义有三种方式//js方法定义有三种方式 function fn(){} var fun = function(){} var fun = new function() {} //**** ...
- sound tips
ASaudio&SoundAS 两个开源项目阅读: ASaudio&SoundAS 都是比较小巧的声音控制,但似乎都不能直接拿到项目只直接使用. ASaudio ASaudio的Tra ...
- linux下安装虚拟机qemu kqemu
一,为什么要装虚拟机,为什么选择qemu 我的系统里面有3个linux系统,这些系统都是独立的,有的时候,我想一台电脑,能更真实的模拟二台,这个时候我们就可以装个虚拟机.其实如果真的很有钱的话,可能考 ...
- Node.js的循环依赖
我们知道在实际编程过程中,要尽可能的减少或者规避循环依赖情况的发生.但在现实环境中,有时却不得不产生循环依赖.Node.js不提倡使用循环依赖,但真有如此情况发生时Node.js也有办法解决.这篇博文 ...
- K2 Blackpearl开发技术要点(Part1)
转:http://www.cnblogs.com/dannyli/archive/2012/09/14/2685260.html K2 Blackpearl开发技术要点(Part1) 预知后事如何,请 ...
- hdu 1023(java实现进度计算)
题意:就是问你火车出战的方案数. 分析:卡特兰数的模板题,递推公式:a[n]=a[n-1]*(4*n-2)/(n+1). java代码实现: import java.util.*; import ja ...
- 【转】linux dumpe2fs命令
转自:http://www.shellcn.net/linux_command/linux_dumpe2fs.html 命令名称 dumpe2fs - 显示ext2/ext3/ext4文件系统信息. ...
- win8 VS控件信息
<TextBlock x:Name="button_1" HorizontalAlignment="Center" TextWrapping=" ...