坑之easyui数据表格(daagird)rows参数

rows是datagird的固定参数
看下图:
asdasd
由于我没有使用分页,所以totalNaN
这里采用的原生Servlet+JDBC完成的宿舍管理系统中的其中一小点功能。
下面开始入坑:

1. 前端数据表格是这样的:

<script type="text/javascript">
	$(function() {
		$('#dg').datagrid({
			title : "宿舍成员信息",
			iconCls : "icon-more",
			rownumbers : "true",
			idField : 'sid',
			loadMsg : '数据正在加载,小伙伴耐心等待哦!!',
			striped : "true",
			fitColumns : "true",
			url : "getStudentByHid",
			columns:[
				[
					{field:'sid', title:'学号', width:'80', resizable:'false'},
					{field:'sname', title:'姓名', width:'80', resizable:'false'},
					{field:'scollege', title:'所在学院', width:'80', resizable:'false'},
					{field:'hid', title:'寝室编号', width:'80', resizable:'false'},
					{field:'ssex', title:'性别', width:'80', resizable:'false'},
					{field:'sage', title:'年龄', width:'80', resizable:'false'},
					{field:'saddress', title:'家庭地址', width:'180', resizable:'false'},
					{field:'sphone', title:'联系电话', width:'140', resizable:'false'}
				]
			],
			onLoadSuccess : function(data) {
				console.log(data);
			}
		});
	})
</script>
<table id="dg" class="easyui-datagrid" cellspacing="0" cellpadding="0"></table>

这里没什么,注意一点L就是field字段不要写错了。
这里打印的data是这样的:
asd
因为除了管理员就两个同学在一起住。

2. Controller层

StudentSelectService sss=new StudentSelectService();
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
	resp.setCharacterEncoding("utf8");
	HttpSession session=req.getSession();		
	UserModel user=(UserModel)session.getAttribute("usermodel");
	int hid = user.getHid();
	JSONObject stuList = sss.getStuByHid(hid);
	PrintWriter pw=resp.getWriter();
	pw.write(stuList.toString());
}

解释
  第一句设置字符编码。
  第二句构建Session对象
  第三句获取session中的登录用户。
  第四句获取学生的宿舍号。
  第五句通过宿舍号获取学生集合并转为JSON对象
  然后写到前端。
这里后台打印的stuList数据是这样的:

{
	"rows":[
		{
			"hid":11001,
			"saddress":"湖南",
			"sage":21,
			"scollege":"信息工程学院",
			"sid":1000,
			"sname":"猪八戒",
			"sphone":"15588887777",
			"spower":0,
			"spwt":"",
			"ssex":"女"
		},{
			"hid":11001,
			"saddress":"上海",
			"sage":22,
			"scollege":"信息工程学院",
			"sid":1005,
			"sname":"唐僧",
			"sphone":"18811114444",
			"spower":0,
			"spwt":"",
			"ssex":"男"
		}
	]
}

因为"spower""spwt"两个字段没有查。所以没有数据。

3. Service层

StudentSelectDao sd = new StudentSelectDao();
public JSONObject getStuByHid(int hid) {
	JSONObject jObject = new JSONObject();
	jObject.put("rows", sd.getStuByHid(hid));
	return jObject;
}

解释:
  通过hid查询到一个学生集合放到JSONObject中返回。
  就这里。rows我刚开始写的是studentList,导致datagird获取不到数据。
  报错:

Unable to get property 'length' of undefined or null reference

4. Dao层也贴上吧。反正也没用

public List<UserModel> getStuByHid(int hid) {
	List<UserModel> list = new ArrayList<>();
	String sql="select sid,sname,scollege,ssex,sage,hid,sphone,saddress from user where spower=1 and hid=?";
	Connection con=null;
	try {
		con=JdbcUtil.getDBConnection();
		PreparedStatement pst = con.prepareStatement(sql);
		pst.setInt(1, hid);
		ResultSet rs = pst.executeQuery();
		while (rs.next()) {
			UserModel user=new UserModel(rs.getInt("sid"),rs.getString("sname"),rs.getString("scollege"),rs.getString("ssex"),rs.getInt("sage"),rs.getInt("hid"),rs.getString("sphone"),rs.getString("saddress"));
			list.add(user);
		}
	} catch (SQLException e) {
		e.printStackTrace();
	}finally {
		JdbcUtil.closedConnection(con);
	}
	return list;
}

没了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值