jquery flexigrid动态加载数据

Java代码  
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"%>  
  2.  <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>  
  3.    
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
  5. <html>  
  6.     <head>  
  7.         <%  
  8.     String path = request.getContextPath();  
  9.     String basepath = request.getScheme() + "://"  
  10.             + request.getServerName() + ":" + request.getServerPort()  
  11.             + path + "/";  
  12. %>  
  13.   
  14.         <link rel="stylesheet" type="text/css"  
  15.             href="<%=basepath%>admin/flexigrid/css/flexigrid_gray.css">  
  16.         <link rel="stylesheet" type="text/css"  
  17.             href="<%=basepath%>admin/flexigrid/jqModal/css/jqModal_gray.css">  
  18.         <script type="text/javascript" src="<%=basepath%>admin/flexigrid/jquery-1.3.2.min.js"></script>  
  19.         <script type="text/javascript" src="<%=basepath%>admin/flexigrid/flexigrid.js"></script>  
  20.         <script type="text/javascript" src="<%=basepath%>admin/flexigrid/jqModal/dimensions.js"></script>  
  21.         <script type="text/javascript" src="<%=basepath%>admin/flexigrid/jqModal/jqDnR.js"></script>  
  22.         <script type="text/javascript" src="<%=basepath%>admin/flexigrid/jqModal/jqModal.js"></script>  
  23.         <!-- 时间js -->  
  24.         <link rel="stylesheet" type="text/css" href="<%=basepath%>admin/Zhuanjia/calendar/GooCalendar.css"/>  
  25.   
  26. <script  type="text/javascript" src="<%=basepath%>admin/Zhuanjia/calendar/GooFunc.js"></script>  
  27. <script  type="text/javascript" src="<%=basepath%>admin/Zhuanjia/calendar/GooCalendar.js"></script>  
  28.         <!-- jquery 特效 -->  
  29.       
  30. <link rel="stylesheet" type="text/css" href="<%=basepath %>admin/test/css/easyui.css"/>  
  31.   
  32.     <script type="text/javascript" src="<%=basepath %>admin/test/js/jquery.easyui.min.js"></script>  
  33.     <link rel="stylesheet" type="text/css" href="<%=basepath %>admin/test/css/icon.css"/>  
  34.     <script type="text/javascript">  
  35.     function search()  
  36.     {  
  37.         var start=$('#start').val();  
  38.         var end=$('#end').val();  
  39.         window.location.href="<%=basepath%>flexczchuzhenAction?start="+start+"&end="+end;  
  40.     }  
  41.     </script>  
  42.     <!-- 日历 -->  
  43.     <script type="text/javascript">  
  44. var property2={  
  45.     divId:"demo2",//日历控件最外层DIV的ID  
  46.     needTime:true,//是否需要显示精确到秒的时间选择器,即输出时间中是否需要精确到小时:分:秒 默认为FALSE可不填  
  47.     yearRange:[1970,2030],//可选年份的范围,数组第一个为开始年份,第二个为结束年份,如[1970,2030],可不填  
  48.     week:['Su','Mo','Tu','We','Th','Fr','Sa'],//数组,设定了周日至周六的显示格式,可不填  
  49.     month:['January','February','March','April','May','June','July','August','September','October','November','December'],//数组,设定了12个月份的显示格式,可不填  
  50.     format:"yyyy-MM-dd hh:mm:ss"  
  51. };  
  52.   
  53. $(document).ready(function(){  
  54.     canva1=$.createGooCalendar("start",property2);  
  55.     canva2=$.createGooCalendar("end",property2);  
  56.       
  57. });  
  58. </script>  
  59.     </head>  
  60.     <body>  
  61.     <div style="padding-bottom: 10px;">  
  62.      开始时间:  
  63. <input type="text" value="" id="start" name="start"/>  
  64.     结束时间 :  
  65. <input type="text" value="" id="end" name="end"/>  
  66.   
  67.     <a href="javascript:search();" class="l-btn l-btn-plain" icon="icon-search" style="width: 100px;">查询</a>  
  68.    </div>  
  69.            <table id="flex1" style="display: none">         
  70.            </table>     
  71.         <script type="text/javascript">     
  72.             $("#flex1").flexigrid      
  73.             (      
  74.             {      
  75.             url: '<%=basepath%>flexigridzhuanjiaAction',      
  76.             dataType: 'json',      
  77.              colModel : [  
  78.                 {display:'编号',name:'id',width:50,sortable:true,align:'center'},  
  79.                 { display : '挂号医生', name : 'yisheng',width : 100,sortable : true,align : 'center'},   
  80.                 { display : '用户名', name : 'user',width : 100,sortable : true,align : 'center'},   
  81.                 { display : '就诊时间', name : 'jztime',width : 100,sortable : true,align : 'center'},   
  82.                 { display : '性别', name : 'sex',width : 50,sortable : true,align : 'center'},    
  83.                 { display : '年龄', name : 'age',width : 50,sortable : true,align : 'center'},    
  84.                 { display : '就诊号码', name : 'jznum',width : 100,sortable : true,align : 'center'},    
  85.                 { display : '挂号费用', name : 'cost',width : 80,sortable : true,align : 'center'},   
  86.                 { display : '身份证号', name : 'shenfen',width : 100,sortable : true,align : 'center'},   
  87.                 { display : '联系电话', name : 'telphone',width : 100,sortable : true,align : 'center'},    
  88.                 { display : '就诊类型', name : 'jztype',width : 100,sortable : true,align : 'center'}    
  89.                     ],      
  90.               
  91.                
  92.                 usepager: false,    
  93.                 title: '综合统计',  
  94.                 useRp: true,    
  95.                 page:1,//默认当前页  
  96.                 total:1,//总页数  
  97.                 rp : 15,//每页默认的结果数  
  98.                 rpOptions:[5,10,15,20,25,30,50,100],  
  99.                 procmsg:'正在处理,请等待......',  
  100.                 nomsg:'没有数据',  
  101.                 hideOnSubmit:true,//隐藏提交  
  102.                 autoload:false,//自动加载  
  103.                 resizable: true//是否可伸缩     
  104.                 nowrap: false//是否不换行   
  105.                 blockOpacity:0.5,//透明度设置    
  106.              checkbox : false,// 是否要多选框    
  107.             showTableToggleBtn: true,      
  108.             width: 1080,      
  109.             height: 400      
  110.             }      
  111.             );      
  112.                   
  113.             function test(com,grid)      
  114.             {      
  115.                 if (com=='Delete')      
  116.                     {      
  117.                         confirm('Delete ' + $('.trSelected',grid).length + ' items?')      
  118.                     }      
  119.                 else if (com=='Add')      
  120.                     {      
  121.                         alert('Add New Item');      
  122.                     }                 
  123.             }      
  124.      
  125.         </script>   
  126.   
  127.     </body>  
  128. </html>  
Java代码  
  1. /** 
  2.      * flexigrid 统计查询 
  3.      * 当期预约挂号情况汇总 
  4.      * 作者:郑云飞 
  5.      */  
  6.     public String flexcz()  
  7.     {  
  8.         HttpServletRequest request = (HttpServletRequest)ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);  
  9.         HttpServletResponse response = (HttpServletResponse)ActionContext.getContext().get(ServletActionContext.HTTP_RESPONSE);  
  10.          //得到当前页数      
  11.         String page = request.getParameter("page")==null?"1":request.getParameter("page");  
  12.         //得到每页显示行数      
  13.         String maxResult = request.getParameter("rp")==null?"10":request.getParameter("rp");      
  14.         //总数据量设置      
  15.         String start=request.getParameter("start");  
  16.         String end=request.getParameter("end");  
  17.         List<Uuser> zzs=new ArrayList<Uuser>();  
  18.         List<Uuser> zjs=userService.findByHql("from Uuser");  
  19.         System.out.println("page="+page+"\tmax==="+maxResult);  
  20.         System.out.println("start="+start+"\tedn="+end);  
  21.        // System.out.println(start.equals(null));  
  22.         if(start==null||end==null)  
  23.         {  
  24.             System.out.println("nulllllllll");  
  25.             zzs=userService.findByHql("from Uuser c order by c.chuzhen.czdate", Integer.parseInt(page), Integer.parseInt(maxResult));  
  26.         }  
  27.         else  
  28.         {  
  29.             System.out.println("start="+start.split(" ")[0]+"\tend=="+end.split(" ")[0]+"\tend=="+end.split(" ")[1]);  
  30.             String startWeek=DataFormatUtil.getWeekDay(start.split(" ")[0]);/*根据开始时间求星期*/  
  31.             String startAm=DataFormatUtil.getMm(start.split(" ")[1]);/*根据开始时间求上下午*/  
  32.             String endWeek=DataFormatUtil.getWeekDay(end.split(" ")[0]);  
  33.             String endAm=DataFormatUtil.getMm(end.split(" ")[1]);  
  34.             /*重新组合开始时间和结束时间*/  
  35.             start=start.split(" ")[0]+" "+startWeek+" "+startAm+" "+start.split(" ")[1];  
  36.             end=end.split(" ")[0]+" "+endWeek+" "+endAm+" "+end.split(" ")[1];  
  37.             System.out.println("重组后的日期====start="+start+"\tend==="+end);  
  38.               
  39.             System.out.println("zjs======="+zjs.size());  
  40.             zzs=userService.findByHql("from Uuser c  where c.chuzhen.czdate>='"+start+"' and c.chuzhen.czdate<='"+end+"' order by c.chuzhen.czdate", Integer.parseInt(page), Integer.parseInt(maxResult));  
  41.         }  
  42.          StringBuffer jsonStr=myflexJson(zzs, Integer.parseInt(page),zjs.size());  
  43.         
  44.              try {      
  45.             response.getWriter().write(jsonStr+"");      
  46.            response.getWriter().flush();      
  47.             response.getWriter().close();      
  48.         } catch (IOException e) {      
  49.             e.printStackTrace();      
  50.         }  
  51. return jsonStr+"";     
  52.         }  

 

Java代码  
  1. /** 
  2.      * 专家flexigrid json数据格式的转换 
  3.      * @param chuzhen 
  4.      * @return 
  5.      */  
  6.     private StringBuffer myflexJson(List<Uuser> czs,int pageNow,int total) {  
  7.   
  8.         StringBuffer json = new StringBuffer();  
  9.         json.append("{\"total\":").append(total).append(",\"page\":").append(pageNow).append(",\"rows\":[");  
  10.         for (int i = 0; i < czs.size(); i++) {  
  11.          /*格式化就诊类型*/  
  12.             String type=czs.get(i).getState();  
  13.             if(type.equals("0"))  
  14.             {  
  15.                 type="黑名单用户";  
  16.             }  
  17.             if(type.equals("1"))  
  18.             {  
  19.                 type="普通用户";  
  20.             }  
  21.             if(type.equals("2"))  
  22.             {  
  23.                 type="VIP用户";  
  24.             }  
  25.               
  26.             json.append("{\"id\":").append(czs.get(i).getId()).append(  
  27.                     ",\"yisheng\":[").append("\""+czs.get(i).getChuzhen().getZhuanjia().getName()+"\"]")  
  28.                     .append(  
  29.                     ",\"user\":[").append("\""+czs.get(i).getRealname()+"\"]")  
  30.                       
  31.                     .append(  
  32.                     ",\"jztime\":[").append("\""+czs.get(i).getChuzhen().getCzdate()+"\"]")  
  33.                       
  34.                     .append(  
  35.                     ",\"sex\":[").append("\""+czs.get(i).getSex()+"\"]")  
  36.                       
  37.                     .append(  
  38.                     ",\"age\":[").append("\""+czs.get(i).getAge()+"\"]")  
  39.                       
  40.                     .append(  
  41.                     ",\"jznum\":[").append("\""+czs.get(i).getJznum()+"\"]")  
  42.                       
  43.                     .append(  
  44.                     ",\"cost\":[").append("\""+czs.get(i).getChuzhen().getCost()+"\"]")  
  45.                       
  46.                     .append(  
  47.                     ",\"shenfen\":[").append("\""+czs.get(i).getIdcard()+"\"]")  
  48.                       
  49.                     .append(  
  50.                     ",\"telphone\":[").append("\""+czs.get(i).getMobile()+"\"]")  
  51.                       
  52.                     .append(  
  53.                     ",\"jztype\":[").append("\""+type+"\"]")  
  54.                       
  55.                     .append("}");  
  56.             if (i < czs.size() - 1) {  
  57.                 json.append(",");  
  58.             }  
  59.         }  
  60.         json.append("]}");  
  61.         return json;  
  62.     }  

 效果图:


你可能感兴趣的:(JavaScript,jquery,null,delete,日历,autoload)