1.创建
<table id ="ID"></table>
2.属性
dategrid:
columns
列的定义的数组
URl:访问远程数据的数组
[“total“:总记录条数,“row”:[{行的对象}]]
toolbar:工具栏
pagination=true/false
是否显示分页栏
列
field
列对应的属性名
title
表头标题
checkbox:true/false
是否是复选框列
必须要同时设置filed
1.创建表格
<table id="hh"></table>
2、创建datagrid显示学生信息,并创建相应的按钮
<script type="text/javascript"> $(function(){ $("#hh").datagrid({ url:'StudentServlet', //冻结列 frozenColumns:[[ {field:'id',checkbox:true},//复选框 {field:'sno',title:'学号',100} ]], //定义列 columns:[[ {field:'sname',title:'姓名',200,align:'center'}, {field:'ssex',title:'性别',200,align:'center', formatter: function(value,row,index){ if(value == '男'||value == 'f') { return '男'; } else { return '女'; } }, styler:function(value,row,index){ if(value=='男'|| value=='f') { return 'background-color:#ccccff;color:red;'; } } }, {field:'sbirthday',title:'生日',200,align:'right'}, {field:'sclass',title:'班级',200,align:'center'} ]] , fitColumns:true, //列自适应宽度,不能和冻结列同时设置为true striped:true, //斑马线 idField:'sno', //主键列 rownumbers:true, //显示行号 singleSelect:false, //是否单选 pagination:true, //分页栏 pageList:[8,16,24,32] , //每页行数选择列表 pageSize:8 , //初始每页行数 remoteSort:false, //是否服务器端排序,设成false才能客户端排序 //sortName:'unitcost', //定义哪些列可以进行排序。 toolbar:[ { iconCls:'icon-search', text:'查询', handler:function(){ $("#hh").datagrid('load')},//加载和显示第一页的所有行 }, { iconCls:'icon-add', text:'添加', handler:function(){ //清除表单旧数据 $("#form1").form("reset");//重置表单数据 $("#saveStu").dialog('open'); }, }, { iconCls:'icon-edit', text:'修改', handler:function(){ }, }, { iconCls:'icon-delete', text:'删除', handler:function(){ }, } ], }); }) </script>
3.创建点击添加按钮时的弹窗dialog,并通过post方式发送表单的信息传给URL地址的Servlet层
<div class="easyui-dialog" id="saveStu" style="400px; height:300px" title="添加学生" data-options="{ closed:true, modal:true, buttons:[{ text:'保存', iconCls:'icon-save', handler:function(){ $('#form1').form('submit',{ url:'SaveStudentServlet', onSubmit:function(){ var isValid = $(this).form('validate'); if(!isValid) { $.messager.show({ title:'消息', msg:'数据验证未通过' }); } return isValid; // 返回false终止表单提交 }, success:function(data){ var msg = eval('('+ data +')');//eval是js的方法 if(!msg.success) { alert(msg.message); } else { $('#hh').datagrid('load'); $.messager.show({ title:'消息', msg:'数据验证通过,保存成功' }); $('#saveStu').dialog('close'); } } }); } }, { text:'取消', iconCls:'icon-cancel', handler:function(){$('#saveStu').dialog('close')}, }] }"> <form action="" id="form1" method="post"><br><br> <table border="0" width=100%> <tr> <td align="right" width="30%">学号:</td> <td> <input class="easyui-textbox" id="sno" name="sno" data-options="required:true,validType:'length[3,3]'"> </td> </tr> <tr> <td align="right" width="30%">姓名:</td> <td> <input class="easyui-textbox" id="sname" name="sname" data-options="required:true,validType:'length[2,3]'"> </td> </tr> <tr> <td align="right" width="30%">性别:</td> <td> <input type="radio" name="ssex" value="男" checked>男 <input type="radio" name="ssex" value="女">女 </td> </tr> <tr> <td align="right" >生日:</td> <td> <input class="easyui-datebox" id="sbirthday" name="sbirthday" data-options="required:false,"> </td> </tr> <tr> <td align="right" >班级:</td> <td> <input class="easyui-textbox" id="sclass" name="sclass" data-options="required:true,validType:'length[5,5]'"> </td> </tr> </table> </form> </div>
servlet层
package com.hanqi.web; import java.io.IOException; import java.text.SimpleDateFormat; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.hanqi.entity.Student; import com.hanqi.service.StudentService; /** * Servlet implementation class SaveStudentServlet */ public class SaveStudentServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public SaveStudentServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //转码 request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); response.setContentType("text/html"); //接受参数 String sno = request.getParameter("sno"); String sname = request.getParameter("sname"); String ssex= request.getParameter("ssex"); String sbirthday = request.getParameter("sbirthday"); String sclass = request.getParameter("sclass"); String msg = "{'success':true,'message':'保存成功'}"; if(sno != null) { try { Student stu = new Student(); stu.setSno(sno); stu.setSclass(sclass); stu.setSname(sname); stu.setSsex(ssex); if(sbirthday !=null && !sbirthday.trim().equals("")) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); stu.setSbirthday(sdf.parse(sbirthday)); } new StudentService().addStudent(stu); } catch(Exception e) { msg = "{'success':false,'message':'访问失败'}"; } response.getWriter().print(msg); } else { msg = "{'success':false,'message':'访问异常'}"; response.getWriter().print(msg); } } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
service层
//添加保存 public void addStudent(Student stu) { new StudentDAO().insert(stu); }
DAO层
//添加数据 public void insert(Student stu) { init(); se.save(stu); destroy(); }