easyui中datagrid下面的rows为NaN
效果就出来了!!
另外就是要设置要取到的键值名称为rows和total
entity层
package cn.sm1234.entity;
public class Role {
private int id;
private String name;
private int sort;
private String remark;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSort() {
return sort;
}
public void setSort(int sort) {
this.sort = sort;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}
package cn.sm1234.entity;
import java.util.List;
public class EasyUIDatagrid {
//当前页显示的数据
private List<?> rows;
//表中总个数
private int total;
public List<?> getRows() {
return rows;
}
public void setRows(List<?> rows) {
this.rows = rows;
}
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
}
dao层
package cn.sm1234.dao;
import cn.sm1234.entity.Role;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
public interface RoleMapper {
List<Role> selByPage(@Param("pageStart")int pageStart,@Param("rows")int pageSize);
int selCount();
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.sm1234.dao.RoleMapper">
<select id="selByPage" parameterType="int" resultType="Role">
select * from mybatis.role limit #{pageStart},#{rows};
</select>
<select id="selCount" resultType="int">
select count(*) from mybatis.role
</select>
</mapper>
service层
package cn.sm1234.service;
import cn.sm1234.entity.EasyUIDatagrid;
public interface RoleService {
EasyUIDatagrid showRole(int pageSize,int pageNumber);
}
package cn.sm1234.service;
import cn.sm1234.dao.RoleMapper;
import cn.sm1234.entity.EasyUIDatagrid;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class RoleServiceImpl implements RoleService{
@Resource
private RoleMapper roleMapper;
@Override
public EasyUIDatagrid showRole(int pageSize, int pageNumber) {
EasyUIDatagrid datagrid=new EasyUIDatagrid();
datagrid.setRows(roleMapper.selByPage(pageSize*(pageNumber-1),pageSize));
datagrid.setTotal(roleMapper.selCount());
return datagrid;
}
}
controller层
package cn.sm1234.controller;
import cn.sm1234.entity.EasyUIDatagrid;
import cn.sm1234.service.RoleServiceImpl;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
@Controller
public class RoleController {
@Resource
private RoleServiceImpl roleServiceImpl;
@RequestMapping("/showRole")
@ResponseBody
public EasyUIDatagrid showRole(@RequestParam(defaultValue = "2")int rows,@RequestParam(defaultValue = "1")int page){
return roleServiceImpl.showRole(rows,page);
}
}
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<table id="role_table"></table>
<script type="text/javascript">
$(function () {
$('#role_table').datagrid({
url:'${pageContext.request.contextPath}/showRole',
columns:[[
{field:'id',title:'编号',width:100,hidden:true},
{field:'name',title:'角色名称',width:100},
{field:'sort',title:'排序id',width:100,align:'right'},
{field:'remark',title:'备注',width:100,align:'right'}
]],
pagination:true,
pageSize:2,//当前页面的总条数大小
pageList:[2,4,6]//在设置分页属性的时候初始化页面大小选择列表。
});
})
</script>
</body>
</html>