easyui-datagrid个人实例
这个实例数据表格的功能,可以实现分页,增删改查功能
1.user.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css"
href="<%=path%>/easyui/themes/default/easyui.css">
<link rel="stylesheet" type="text/css"
href="<%=path%>/easyui/themes/icon.css">
<link rel="stylesheet" type="text/css" href="<%=path%>/easyui/demo.css">
<script type="text/javascript" src="<%=path%>/easyui/jquery-1.7.2.min.js"></script>
<script type="text/javascript"
src="<%=path%>/easyui/jquery.easyui.min.js"></script>
<script type="text/javascript">
$(function() {
var flag ;//判断新增还是修改
$('#tab').datagrid({
title : '用户列表',
iconCls : 'icon-edit',//图标
//width : '400px',
height : 'auto',
nowrap : false,//当true的时候,会显示在一行里
striped : true,//各行变色
border : true,
collapsible : false,//是否可折叠的
fit : true,//自动大小
url : '/egoTest/user/queryUser.do',
//sortName: 'code',
//sortOrder: 'desc',
remoteSort : false,
loadMsg:'数据正在加载,请等待......',
idField : 'id',
singleSelect : true,//是否单选
pagination : true,//分页控件
rownumbers : true,//行号
checkOnSelect : true,
selectOnCheck : true,
// remoteSort : false,
// sortName:'userName',
// sortOrder:'asc',
rowStyler:function(index,record){
console.info(index);
console.info(record);
/*if(record.age > 5000){
return "background:red";
}*/
},
frozenColumns:
[[
//你把 ck 换成 QID 试试
{ field: 'QID', checkbox: true }
]],
columns : [ [ {
field : 'id',
title : 'id',
width : '30%'
}, {
field : 'userName',
title : 'userName',
width : '30%',
sortable:true
}, {
field : 'age',
title : 'age',
width : '30%',
align : 'right',
sortable:true
} ] ],
toolbar : [ {
text : '添加',
iconCls : 'icon-add',
handler : function() {
flag = 'add';
$("#my_dialog").dialog({
title:"新增用户"
})
$("#form_user").get(0).reset();
$("#my_dialog").dialog('open');
}
}, '-', {
text : '修改',
iconCls : 'icon-edit',
handler : function() {
flag = 'edit';
var arr = $("#tab").datagrid("getSelections");
if(arr.length != 1){
$.messager.show({
title:'提示信息',
msg:'只能选择一行记录进行修改'
});
}else{
$("#my_dialog").dialog({
title:"修改用户"
})
$("#my_dialog").dialog('open');
$("#form_user").get(0).reset();
$("#form_user").form('load',{
id :arr[0].id ,
userName : arr[0].userName ,
age : arr[0].age
});
}
}
}, '-', {
text : '删除',
iconCls : 'icon-remove',
handler : function() {
var arr = $("#tab").datagrid("getSelections");
if(arr.length <= 0){
$.messager.show({
title:'提示信息',
msg:'只能选择一行记录进行删除!'
});
}else{
$.messager.confirm("提示信息","确认删除吗",function(r){
if(r){
var ids = '';
for(var i =0;i<arr.length;i++){
ids += arr[i].id + ",";
}
ids = ids.substring(0,ids.length-1);
$.post('/egoTest/user/deleteUser.do',{ids:ids},function(result){
$("#tab").datagrid("reload");
$("#tab").datagrid('unselectAll'); //清空idFiled
$.messager.show({
title:'提示信息',
msg:'操作成功!'
});
});
}else{
return;
}
})
}
}
} , '-', {
text : '查询',
iconCls : 'icon-search',
handler : function() {
$("#lay").layout('expand','north');
}
}],
});
//设置分页控件
var p = $('#tab').datagrid('getPager');
$(p).pagination({
pageSize : 10,//每页显示的记录条数,默认为10
pageList : [ 5, 10, 15, 20, 50 ],//可以设置每页记录条数的列表
beforePageText : '第',//页数文本框前显示的汉字
afterPageText : '页 共 {pages} 页',
displayMsg : '当前显示 {from} - {to} 条记录 共 {total} 条记录',
onBeforeRefresh : function() {
$(this).pagination('loading');
// alert('before refresh');
$(this).pagination('loaded');
$('#tab').datagrid('reload');
}
});
$("#btn1").click(function(){
if($('#form_user').form('validate')){
$.ajax({
type : 'POST',
url : flag == 'add'?'/egoTest/user/saveUser.do':'/egoTest/user/updateUser.do',
data: $('#form_user').serialize(),
dataType : 'json',
success : function(data) {
//关闭窗口
$("#my_dialog").dialog('close');
//刷新datagrid
$("#tab").datagrid('reload');
//提示信息
$.messager.show({
title: data.status,
msg: data.message
});
},
error : function(data) {
$.messager.show({
title: '提示信息',
msg:'错误返回'
})
}
});
}else{
$.messager.show({
title : '提示信息',
msg:'数据验证不通过,不能保存!'
})
}
});
$("#btn2").click(function(){
$("#my_dialog").dialog('close');
});
$("#searchbtn").click(function(){
$("#tab").datagrid('load',serializeForm($("#mysearch")));
});
$("#clearbtn").click(function(){
$("#mysearch").form('clear');
$("#tab").datagrid('load',{});
});
function serializeForm(form){
var obj = {};
$.each(form.serializeArray(),function(index){
if(obj[this['name']]){
obj[this['name']] = obj[this['name']] + ',' +this['value'];
}else{
obj[this['name']] = this['value'];
}
});
return obj;
}
});
</script>
<style type="text/css">
body {
font-family:verdana,helvetica,arial,sans-serif;
padding:5px;
font-size:12px;
margin:0;
}
</style>
</head>
<body>
<div id="lay" class="easyui-layout" style="width: 100%; height: 100%;">
<div region="north" title="用户查询" collapsed=true style="height: 100px;">
<form id="mysearch" method="post">
用户名:<input name="userName" class="easyui-validatebox" required="true" missingMessage="请输入姓名" value=""/>
年龄:<input name="age" class="easyui-validatebox" required="true" missingMessage="请输入年龄" value=""/>
<a id="searchbtn" class="easyui-linkbutton">查询</a>
<a id="clearbtn" class="easyui-linkbutton">清空</a>
</form>
</div>
<div region="center">
<table id="tab"></table>
</div>
</div>
<div id="my_dialog" title="新增用户" modal=true draggable=false class="easyui-dialog" closed=true style="width:700px;height:400px;">
<form id="form_user" action="">
<table align="center">
<tr>
<td>编号:</td>
<td><input type="text" id="id" name="id"
class="easyui-validatebox" required="true" missingMessage="请输入编号" /></td>
</tr>
<tr>
<td>姓名:</td>
<td><input type="text" id="userName" name="userName"
class="easyui-validatebox" required="true" missingMessage="请输入姓名" /></td>
</tr>
<tr>
<td>年龄:</td>
<td><input type="password" id="age" name="age"
class="easyui-validatebox" required="true" missingMessage="请输入年龄" /></td>
</tr>
<tr>
<td colspan="2">
<a id="btn1" class="easyui-linkbutton">确定</a>
<a id="btn2" class="easyui-linkbutton">取消</a>
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
2.UserController.java
package com.controller;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONObject;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import com.model.User;
import com.service.UserService;
import com.util.Page;
@Controller
@RequestMapping("/user")
public class UserController {
@Resource
private UserService userService;
@RequestMapping("/getAllUser")
public String getAllUser(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap, Page page) {
List<String> list = new ArrayList<String>();
list.add("cxx1");
list.add("cxx2");
list.add("cxx3");
List<User> uList = userService.getAllUser(page);
modelMap.put("uList", uList);
modelMap.put("list", list);
return "index2";
}
@RequestMapping("/getAjaxUser")
public void getAjaxUser(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap, Page page) {
try {
response.setContentType("text/html;charset=UTF-8");
List<User> uList = userService.getAllUser(page);
Map<String, Object> map = new HashMap<String, Object>();
// map.put( "total",total);
map.put("total", 57);
map.put("rows", uList);
JSONObject json = JSONObject.fromObject(map);
// String str = "aabbcc";
PrintWriter pw = response.getWriter();
pw.write(json.toString());
pw.flush();
pw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
@RequestMapping("/getAjaxUser2")
public void getAjaxUser2(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap, Page page) {
try {
response.setContentType("text/html;charset=UTF-8");
List<User> uList = userService.getAllUser(page);
Map<String, Object> map = new HashMap<String, Object>();
// map.put( "total",total);
map.put("total", Integer.valueOf(page.getTotal()));
map.put("rows", uList);
JSONObject json = JSONObject.fromObject(map);
// String str = "aabbcc";
PrintWriter pw = response.getWriter();
pw.write(json.toString());
pw.flush();
pw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
@RequestMapping("/queryUser")
public void queryUser(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap, Page page) {
try {
String currentPage = request.getParameter("page");
String pageSize = request.getParameter("rows");
String userName = request.getParameter("userName")==null?"":request.getParameter("userName");
String age = request.getParameter("age")==null?"":request.getParameter("age");
Map<String,Object> queryMap = new HashMap<String,Object>();
queryMap.put("userName",userName);
queryMap.put("age",age);
page.setCurrentPage(Integer.parseInt(currentPage));
page.setPageSize(Integer.parseInt(pageSize));
response.setContentType("text/html;charset=UTF-8");
// Thread.sleep(500);
List<User> uList = userService.queryUser(page,queryMap);
Map<String, Object> map = new HashMap<String, Object>();
// map.put( "total",total);
map.put("total", Integer.valueOf(page.getTotal()));
map.put("rows", uList);
JSONObject json = JSONObject.fromObject(map);
// String str = "aabbcc";
PrintWriter pw = response.getWriter();
pw.write(json.toString());
pw.flush();
pw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
@RequestMapping("/saveUser")
public void saveUser(HttpServletRequest request,
HttpServletResponse response,User u) {
try{
response.setContentType("text/html;charset=UTF-8");
PrintWriter pw = response.getWriter();
String id = request.getParameter("id");
String userName = request.getParameter("userName");
String age = request.getParameter("age");
u.setId(Integer.parseInt(id));
u.setUserName(userName);
u.setAge(Integer.parseInt(age));
userService.saveUser(u);
String result = "{\"status\":\"ok\",\"message\":\"操作成功\"}";
pw.write(result);
pw.flush();
pw.close();
}catch (Exception e) {
e.printStackTrace();
}
}
@RequestMapping("/updateUser")
public void updateUser(HttpServletRequest request,
HttpServletResponse response,User u){
try{
String id = request.getParameter("id");
String userName = request.getParameter("userName");
String age = request.getParameter("age");
u = userService.findUserById(id);
u.setId(Integer.parseInt(id));
u.setUserName(userName);
u.setAge(Integer.parseInt(age));
userService.updateUser(u);
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter pw = response.getWriter();
String result = "{\"status\":\"ok\",\"message\":\"操作成功\"}";
pw.write(result);
pw.flush();
pw.close();
}catch (Exception e) {
e.printStackTrace();
}
}
@RequestMapping("/deleteUser")
public void deleteUser(HttpServletRequest request,
HttpServletResponse response,User u){
String[] ids = request.getParameter("ids").split(",");
for(int i=0;i<ids.length;i++){
userService.deleteUser(ids[i]);
}
}
}
easyui-datagrid个人实例的更多相关文章
- Jquery EasyUI DataGrid .net实例
前台界面:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- easyui DatagrId 的实例讲解
下面是代码实现 @{ ViewBag.Title = "人员查找"; ViewBag.LeftWidth = "200px"; ViewBag ...
- EasyUI datagrid优化
easyui datagrid 在IE上加载速度慢, 150行数据就无法忍受了. firefox加载速度还可以. jquery easyui datagrid使用参考 http://www.cnblo ...
- 实现easyui datagrid在没有数据时显示相关提示内容
本示例实现easyui datagrid加载/查询数据时,如果没有相关记录,则在datagrid中显示没有相关记录的提示信息,效果如下图所示 本实例要实现如下图所示的效果: 本示例easyui版本为1 ...
- jQuery EasyUI datagrid实现本地分页的方法
http://www.codeweblog.com/jquery-easyui-datagrid%e5%ae%9e%e7%8e%b0%e6%9c%ac%e5%9c%b0%e5%88%86%e9%a1% ...
- [转载]再次谈谈easyui datagrid 的数据加载
这篇文章只谈jQuery easyui datagrid 的数据加载,因为这也是大家谈论最多的内容.其实easyui datagrid加载数据只有两种方式:一种是ajax加载目标url返回的json数 ...
- 解决easyui datagrid加载数据时,checkbox列没有根据checkbox的值来确定是否选中
背景: 昨天帮朋友做一个easyui datagrid的小实例时,才发现easyui datagrid的checkbox列,没有根据值为true或false来选中checkbox,当时感觉太让人失 ...
- springMVC注解方式+easyUI+MYSQL配置实例
刚接触springMVC,使用的注解方式,也在学习阶段,所以把自己学习到的记下来.本文利用springMVC从数据库读取用户信息为例,分享一下. 1.准备相关架包及资源.因为使用springMVC+e ...
- 谈谈easyui datagrid 的数据加载(转)
这篇文章只谈jQuery easyui datagrid 的数据加载,因为这也是大家谈论最多的内容.其实easyui datagrid加载数据只有两种方式:一种是ajax加载目标url返回的json数 ...
- 再次谈谈easyui datagrid 的数据加载
from:http://www.easyui.info/archives/204.html 这篇文章只谈jQuery easyui datagrid 的数据加载,因为这也是大家谈论最多的内容.其实ea ...
随机推荐
- VSCode------.net core2.0发布后配置到Window Service 2008R2报500错误
如图: 解决方法: 出现这个错误是因为 IIS 采用了更安全的 web.config 管理机制,默认情况下会锁住配置项不允许更改. 要取消锁定可以运行命令行 %windir%\system32\ine ...
- CentOS-6.4 安装 Memcached
1.准备文件 cd /usr/src 最新版下载地址 :http://code.google.com/p/memcached/downloads/list wget http://memcached. ...
- scala中隐式转换之隐式转换调用类中本不存在的方法
/** * Created by root * Description : 隐式转换调用类中本不存在的方法 */ class Person(name : String){ def getPersonN ...
- solaris 下查看某程序所开端口
普通linux机器下可以用netstat -anp | grep pid即可. solaris下则不同,可以借助pfiles工具,pfiles $pid | grep sock pfiles | gr ...
- osgearth缓存数据命令
新建一个.bat文件 中国地区 osgearth_package.exe ReadyMap.earth --tms ReadyMap.earth --out D:\APICenter\EarthDat ...
- Android Studio 修改Logcat的颜色
在Android Studio里面默认的logcat显示颜色是灰色的,不同等级的log是没有颜色分别的,如图 这一点远不如Eclipse好看,但是Android Studio的logcat的颜色其实也 ...
- Kafka一些常见资源汇总
终于下定决心写一点普及类的东西.很多同学对Kafka的使用很感兴趣.如果你想参与到Kafka的项目开发中,很多资源是你必须要提前准备好的.本文罗列了一些常用的Kafka资源,希望对这些develope ...
- 利用NtQuerySystemInformation函数遍历进程,遍历线程,获取线程挂起或运行状态
版权声明:专注于计算机网络安全学习 https://blog.csdn.net/u011672712/article/details/51586030 1 2 3 4 5 6 7 8 9 10 11 ...
- 【架构师之路】APP架构师必看:面对爆发流量如何进行架构调整
一.APP架构与WEB架构的最大不同 移动APP的架构和传统PC的WEB架构有三点不同: 1.连接的稳定性.在传统的web端连接成功后就可以认为它是稳定的,但在移动端.无线端,APP连接非常敏感,可能 ...
- JS - 二叉树算法实现与遍历 (更新中...)
一.关于二叉树: 截图来自:https://segmentfault.com/a/1190000000740261 温馨提示:学习以及使用二叉树概念,心中永远有这么一个图,对于理解和接受二叉树有很大的 ...