easyui datagrid使用(好)
加载相关js和css,因为easyui依赖jquery,所有加载easyui前要先加载jquery,否则为提示找不到datagrid
- <!-- 加载jquery -->
 - <script type="text/javascript" src="plugins/jquery/jquery-1.4.2.min.js"></script>
 - <!-- 加载jquery-easyui -->
 - <link rel="stylesheet" type="text/css" href="plugins/jquery/jquery-easyui-1.1.2/themes/default/easyui.css">
 - <link rel="stylesheet" type="text/css" href="plugins/jquery/jquery-easyui-1.1.2/themes/icon.css">
 - <script type="text/javascript" src="plugins/jquery/jquery-easyui-1.1.2/jquery.easyui.min.js"></script>
 
界面加入
- <table id="cxdm"></table>
 
加载datagrid的js代码
- //页面加载
 - $(document).ready(function(){
 - loadGrid();
 - });
 - //加载表格datagrid
 - function loadGrid()
 - {
 - //加载数据
 - $('#cxdm').datagrid({
 - width: 'auto',
 - height:300,
 - striped: true,
 - singleSelect : true,
 - url:'getPsNewConsultList.action',
 - //queryParams:{},
 - loadMsg:'数据加载中请稍后……',
 - pagination: true,
 - rownumbers: true,
 - columns:[[
 - {field:'adviceid',title: '来文号',align: 'center',width: getWidth(0.2)},
 - {field:'consulter',title: '案由',align: 'center',width: getWidth(0.45),
 - //添加超级链,并将来文号作为参数传入
 - formatter:function(val,rec){
 - //alert(rec.adviceid);
 - return "<a href='jsp/proposal/psconsultview.jsp?id="+rec.adviceid+"'>"+val+"</a>";
 - }
 - },
 - {field:'content',title: '状态',align: 'center',width: getWidth(0.2)},
 - {field:'replynumber',title: '回复数',align: 'center',width: getWidth(0.05)}
 - ]]
 - });
 - }
 - //为loadGrid()添加参数
 - var queryParams = $('#cxdm').datagrid('options').queryParams;
 - queryParams.who = who.value;
 - queryParams.type = type.value;
 - queryParams.searchtype = searchtype.value;
 - queryParams.keyword = keyword.value;
 - //重新加载datagrid的数据
 - $("#cxdm").datagrid('reload');
 
datagrid添加参数的方式
- //为loadGrid()添加参数
 - var queryParams = $('#cxdm').datagrid('options').queryParams;
 - queryParams.who = who.value;
 - queryParams.type = type.value;
 - queryParams.searchtype = searchtype.value;
 - queryParams.keyword = keyword.value;
 - //重新加载datagrid的数据
 - $("#cxdm").datagrid('reload');
 
或者直接添加在url中
- $('#repeatpspolal').datagrid({
 - title:'重复的未初分提案',
 - loadMsg:"数据加载中,请稍后……",
 - region:'north',
 - url:"getRepeatPs.action?documentnumber="+documentnumber+"&simDegree="+simDegree,
 - 。。。。。。
 
Action层
- //当前页码
 - private int page;
 - .........
 - //征询意见结果集
 - private List<Object> rows;
 - ...........
 - @SuppressWarnings("unchecked")
 - public String getPsNewConsultList() throws GlobalException {
 - //获取每页显示的行数
 - int pageRows=10;
 - if(null!=request.getParameter("rows")) {
 - pageRows=Integer.parseInt(request.getParameter("rows").toString());
 - }
 - ...........
 - //获取结果集
 - this.setRows(proposalService.getPsNewConsultList(consulter,consultee,type,psId,psContent,pageRows*(page-1)+1,pageRows*page));
 - //获取总记录数
 - this.setTotal(100);
 - ...............
 - }
 
其中的page由datagrid传入,当用户在datagrid左下角选择每页显示的行数时,datagrid会将该值已参数形式附加到url后面传入action中,名字就叫page,还要将结果总行数total传给datagrid,用于分页
不知道是datagrid配置有误还是datagrid的bug,datagrid的结果集和每页显示的行数都叫rows,重名了
解决办法如上,结果集还是叫rows,但是List的类型改为Object而不能用实体的类型,每页显示的行数通过request获取
action配置时,要继承json-default,json-default继承自struts-default,还要配置输出结果类型为json
- <action name="getPsNewConsultList" class="proposalConsultAction" method="getPsNewConsultList">
 - <result name="success" type="json">
 - <param name="includeProperties">
 - ^rows\[\d+\]\.\w+,total
 - </param>
 - <param name="noCache">true</param>
 - <param name="ignoreHierarchy">false</param>
 - </result>
 - </action>
 
service层
- @SuppressWarnings("unchecked")
 - public List getPsNewConsultList(String consulter,String consultee,String type,String psId,String psContent,int pageRows,int page) throws Exception {
 - return proposalDAO.getPsNewConsultList(consulter,consultee,type,psId,psContent,pageRows,page);
 - }
 
dao层只需要将ResultSet中的数据循环加入实体属性,然后将实体实例加入List即可,形式如下:
- List<Person> list=new ArrayList<Person>();
 - Person person=null;
 - while(rs.next())
 - {
 - person=new Person();
 - person.setId(i);
 - person.setName("名字"+i);
 - list.add(person);
 - }
 - .........
 - return list;
 
easyui datagrid使用(好)的更多相关文章
- JQuery easyUI DataGrid 创建复杂列表头(译)
		
» Create column groups in DataGrid The easyui DataGrid has ability to group columns, as the followin ...
 - 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(8)-MVC与EasyUI DataGrid 分页
		
系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 EasyUI Datagrid在加载的时候会提交一些分页的信息到后台,我们需要根据这些信息来进行数据分页再次返回到前台 实 ...
 - 控制EasyUI DataGrid高度
		
这次要说的是控制EasyUI的高度,平时我公司的项目,用EasyUI较多,然后datagrid这个组件是用的非常多的.平时我们都是固定高度,常见代码如下: <table ...
 - EasyUI datagrid 日期时间格式化
		
EasyUI datagrid中显示日期时间时,会显示为以下不太直观的数值: 添加以下JavaScript脚本,然后在field中添加 formatter: DateTimeFormatter 即可. ...
 - easyui datagrid中 多表头方法总结
		
easyui datagrid中怎么设置表头成多行显示呢?其实很简单,就是给datagrid的columns属性设置成多个数组就行了.下面直接看例子吧,这是一个两行表头的,按照此方法,还可以设置三行表 ...
 - jquery easyui datagrid翻页后再查询始终从第一页开始
		
在查询之前将datagrid的属性pageNumber重新设置为1 var opts = grid.datagrid('options'); opts.pageNumber = 1; easyui d ...
 - 让easyui datagrid支持bootstrap的tooltip
		
让easyui datagrid支持bootstrap的tooltip 发表于 下午 1:53 by ylpro.net & 分类 Java. Easyui在1.3.3版本之前是不支持tool ...
 - easyui datagrid 没数据时显示滚动条的解决方法
		
今天解决了一个bug,因为datagrid有多列,可是当没有数据的时候,后面的列无法通过滚动条拉动来显示,比较麻烦,而需求要求没有数据也要拉动滚动条查看后面有什么列,一开始在网上找了一些资料,发现都不 ...
 - VS2012 easyui datagrid url访问之坑
		
VS2012 easyui datagrid url访问之坑 url属性放的是地址的话 返回的json格式必须有 total 和 rows,如下: {"total":2," ...
 - EasyUI Datagrid Datetime(EasyUI DataGrid 时间格式化)
		
EasyUI DataGrid 时间格式化 方法一: var Common = { //EasyUI用DataGrid用日期格式化 TimeFormatter: function (value, re ...
 
随机推荐
- 走进科学之WAF(Web Appllication Firewall)篇
			
小编P.S:文章非常详尽对WAF领域进行了一次科普,能有让人快速了解当前WAF领域的相关背景及现状,推荐所有WAF领域的同学阅读本文. 1. 前言 当WEB应用越来越为丰富的同时,WEB 服务器以其强 ...
 - html5 placeholder
			
placeholder是html5<input>标签的一个属性,placeholder 属性提供可描述输入字段预期值的提示信息(hint).该提示会在输入字段为空时显示,并会在字段获得焦点 ...
 - matlab求曲线长度
			
曲线段在上的弧长为采用积分所求弧长s=∫√(1+y'²)dxmatlab求出各点的导数,然后按照上式积分 clear>> x=1:0.1:10;>> y=rand(1,leng ...
 - 2016-1-6第一个完整APP 私人通讯录的实现 2:增加提示用户的提示框,监听文本框
			
一:在登录时弹出提示用户的提示框: 1.使用第三方框架. 2.在登陆按钮点击事件中增加如下代码: - (IBAction)loginBtnClicked { NSString *acount = se ...
 - 简单实现web单点登录
			
主要参考文档:http://blog.csdn.net/jimmy609/article/details/18605781 1.工程总体结构: 2.修改C:\Windows\System32\driv ...
 - codeforces 597C (树状数组+DP)
			
题目链接:http://codeforces.com/contest/597/problem/C 思路:dp[i][j]表示长度为i,以j结尾的上升子序列,则有dp[i][j]= ∑dp[i-1][k ...
 - Smart210学习记录-------文件操作
			
一.linux文件操作(只能在linux系统上用) 创建:int creat(const char* filename, mode_t mode) filename 表示要创建的文件名,mode表示对 ...
 - 跳出frameset框架
			
很多网页都是框架结构的,在很多的情况下会通过按钮点击事件或链接,跳出框架转到其它界面.例如说点击“注销登录”返回到登录界面. 一.通过运行脚本跳出框架有以下几种写法: 1.<script lan ...
 - 基于tcpdump实例讲解TCP/IP协议
			
前言 虽然网络编程的socket大家很多都会操作,但是很多还是不熟悉socket编程中,底层TCP/IP协议的交互过程,本文会一个简单的客户端程序和服务端程序的交互过程,使用tcpdump抓包,实例讲 ...
 - Apache、tomcat、Nginx常用配置合集
			
配置文件地址: Apache: /etc/httpd/conf/httpd.conf tomcat: /usr/local/tomcat/conf/server.xml Nginx : /usr/l ...