全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

EasyUI学习之DataGird分页显示数据

本文实例为大家分享了EasyUI DataGird的使用方法,供大家参考,具体内容如下

1. html代码

<table 
  id="grid" 
  style="width: 940px" 
  title="用户操作" 
  data-options="iconCls:'icon-view'">
</table>

2.显示

3.js代码

// 页面加载后显示表数据
$(function() {
  var queryData = {};// 可添加一些预设条件
  InitGrid(queryData);// 初始化Datagrid表格数据
});

// 实现对DataGird控件的绑定操作
function InitGrid(queryData) {
  $('#grid').datagrid({ // 定位到Table标签,Table标签的ID是grid
    url : 'getNoticesByUserId',// 指向后台的Action来获取当前用户的信息的Json格式的数据
    title : '公告管理',
    iconCls : 'icon-view',
    height : 650,
    width : function() {
      return document.body.clientWidth
    },// 自动宽度
    pagination : true,
    rownumbers : true,
    sortName : 'title', // 根据某个字段给easyUI排序
    pageSize : 20,
    sortOrder : 'asc',
    remoteSort : false,
    idField : 'id',
    queryParams : queryData, // 异步查询的参数
    columns : [ [ {
      field : 'ck',
      width : '1%',
      checkbox : true
    }, {
      title : '标题',
      field : 'title',
      width : '9%',
      sortable : true,
      halign : 'center'
    }, {
      title : '发布人',
      field : 'userName',
      width : '10%',
      sortable : true,
      halign : 'center'
    }, {
      title : '内容',
      field : 'content',
      width : '50%',
      sortable : true,
      halign : 'center',
      sortable : false
    }, {
      title : '创建日期',
      field : 'createDate',
      width : '20%',
      sortable : true,
      halign : 'center',
      align : 'center',
      sortable : false
    } ] ],
    toolbar : [ {
      id : 'btnAdd',
      text : '添加',
      iconCls : 'icon-add',
      handler : function() {
        ShowAddDialog();// 实现添加记录的页面
      }
    }, '-', {
      id : 'btnEdit',
      text : '修改',
      iconCls : 'icon-edit',
      handler : function() {
        ShowEditDialog();// 实现修改记录的方法
      }
    }, '-', {
      id : 'btnDelete',
      text : '删除',
      iconCls : 'icon-remove',
      handler : function() {
        Delete();// 实现直接删除数据的方法
      }
    } ]
  });

};

4.Json数据

{
  "total": 2,
  "rows":[{
      "content": "11",
      "createDate": "2016-12-15 23:03:50",
      "id": 1,
      "title": "11",
      "userName": "789"

    }, {
      "content": "我是",
      "createDate": "2016-12-16 20:10:03",
      "id": 4,
      "title": "为",
      "userName": "789"
    }
  ]
}

5.Java后台封装

/********************1.action代码*******************/
private NoticeManager noticeManager;
private int page;
private int rows;
Map<String, Object> map = new HashMap<String, Object>();

public NoticeManager getNoticeManager() {
  return noticeManager;
}
public void setNoticeManager(NoticeManager noticeManager) {
  this.noticeManager = noticeManager;
}
public int getPage() {
  return page;
}
public void setPage(int page) {
  this.page = page;
}
public int getRows() {
  return rows;
}
public void setRows(int rows) {
  this.rows = rows;
}
public Map<String, Object> getMap() {
  return map;
}
public void setMap(Map<String, Object> map) {
  this.map = map;
}

/**
 * @Title: getNoticesByUserId 
 * @Description: TODO(获取首页显示的所有公告数据) 
 * @return??? 设定文件
 * @return String??? 返回类型
 * @throws
 */
public String getNoticesByUserId() {
  // 存放数据的list
  List<ANotice> aNotices = new ArrayList<ANotice>();
  User u = (User) getSession().get("LoginUser");
  List<Notice> notices = noticeManager.GetNotices(page, rows, u.getId());

  for (Notice notice : notices) {
    ANotice aNotice = new ANotice();
    aNotice.setId(notice.getId());
    aNotice.setTitle(notice.getTitle());
    aNotice.setCreateDate(notice.getCreateDate());
    aNotice.setUserName(u.getUsername());
    aNotice.setContent(notice.getContent());
    aNotices.add(aNotice);
  }

  // total是easyui分页工具的总页数。名字固定。
  map.put("total", noticeManager.getTotal(page, rows, u.getId()));
  map.put("rows", aNotices);

  return SUCCESS;
}

// total是easyui分页工具的总页数。名字固定。
map.put("total", noticeManager.getTotal(page, rows, u.getId()));
map.put("rows", aNotices);

/********************2.Manager代码*******************/
@Override
public List<Notice> GetNotices(int page, int rows, int userId) {    
  String hql="From Notice Where 1=1 and userId = ?";
  return dao.find(hql, new Object[]{userId}, page, rows);   
}

@Override
public Long getTotal(int page, int rows, int userId) { 
  String hql="select count(*) from Notice Where 1=1 and userId = ?";
  return dao.count(hql, new Object[]{userId});
}

/********************3.dao代码*******************/
public List<T> find(String hql, Object[] param, Integer page, Integer rows) {
  if (page == null || page < 1) { 
    page = 1; 
  }
  if (rows == null || rows < 1) {
    rows = 10; 
  } 
  Query q = this.getCurrentSession().createQuery(hql); 
  if (param != null && param.length > 0) { 
    for (int i = 0; i < param.length; i++) { 
      q.setParameter(i, param[i]); 
    } 
  } 
  return q.setFirstResult((page - 1) * rows).setMaxResults(rows).list(); 
}

6.struts配置文件

<!--前后台通过Json方式传输数据 -->
<package name="jsonPackage" extends="struts-default,json-default">
  <action name="getNoticesByUserId" class="NoticeAction" method="getNoticesByUserId">
    <!-- 返回json类型数据 -->
    <result name="success" type="json">
      <param name="root">map</param>
    </result>
  </action>
</package>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# EasyUI  # DataGird  # 分页  # EasyUi中的Combogrid 实现分页和动态搜索远程数据  # MVC+EasyUI+三层新闻网站建立 分页查询数据功能(七)  # jQuery EasyUI API 中文文档 - Pagination分页  # jQuery EasyUI datagrid实现本地分页的方法  # jQuery EasyUI Pagination实现分页的常用方法  # EasyUi datagrid 实现表格分页  # EasyUI Pagination 分页的两种做法小结  # SSh结合Easyui实现Datagrid的分页显示  # 浅谈MVC+EF easyui dataGrid 动态加载分页表格  # EasyUi+Spring Data 实现按条件分页查询的实例代码  # easyUI使用分页过滤器对数据进行分页操作实例分析  # 我是  # 发布人  # 大家分享  # 首页  # 绑定  # 具体内容  # 配置文件  # 大家多多  # 创建日期  # 加载  # asc  # false  # remoteSort  # idField  # ck  # checkbox  # field  # queryParams  # columns 


相关文章: 济南网站建设制作公司,室内设计网站一般都有哪些功能?  制作营销网站公司,淘特是干什么用的?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何通过FTP空间快速搭建安全高效网站?  如何在万网ECS上快速搭建专属网站?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  c++怎么用jemalloc c++替换默认内存分配器【性能】  如何快速生成专业多端适配建站电话?  定制建站如何定义?其核心优势是什么?  高端建站三要素:定制模板、企业官网与响应式设计优化  C#怎么使用委托和事件 C# delegate与event编程方法  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  Swift中循环语句中的转移语句 break 和 continue  如何用PHP快速搭建高效网站?分步指南  网站代码制作软件有哪些,如何生成自己网站的代码?  建站之星如何快速更换网站模板?  再谈Python中的字符串与字符编码(推荐)  教学网站制作软件,学习*后期制作的网站有哪些?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  *服务器网站为何频现安全漏洞?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  制作旅游网站html,怎样注册旅游网站?  建站之星代理如何优化在线客服效率?  如何通过山东自助建站平台快速注册域名?  jQuery 常见小例汇总  Python文件管理规范_工程实践说明【指导】  Python lxml的etree和ElementTree有什么区别  如何快速搭建FTP站点实现文件共享?  如何制作一个表白网站视频,关于勇敢表白的小标题?  微信小程序 input输入框控件详解及实例(多种示例)  临沂网站制作企业,临沂第三中学官方网站?  深圳网站制作培训,深圳哪些招聘网站比较好?  C++如何编写函数模板?(泛型编程入门)  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  如何实现建站之星域名转发设置?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  哈尔滨网站建设策划,哈尔滨电工证查询网站?  如何在IIS管理器中快速创建并配置网站?  建站之星后台密码遗忘或太弱?如何重置与强化?  c# 在ASP.NET Core中管理和取消后台任务  如何在Windows虚拟主机上快速搭建网站?  制作网站的公司有哪些,做一个公司网站要多少钱?  建站之星如何助力企业快速打造五合一网站?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  建站之星如何通过成品分离优化网站效率?  TestNG的testng.xml配置文件怎么写  专业公司网站制作公司,用什么语言做企业网站比较好? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。