客戶端使用jquery,設置了上一頁和下一頁作為分頁并顯示總頁數和當前頁數,并把返回的json用div+span顯示:

          $.ajaxSetup({
          beforeSend: function() {
          $("#back").html('<img src="loading.gif">');
          },
          complete: function() {},
          error:function(){$("#back").html('<font color="red">read data error..</font>');},
          method: "post",
          timeout:50000,
          cache:false
          });

          function loaddatapage(page){
          $("#detail").html('');
          $.ajax({
          dataType:'json',
          url:"<%=request.getContextPath()%>/jiner/jiner.action",
          data:"pagenum=" + page,
          success:function(data){
          $("#detail").append('<p style="color:white;background-color:blue;font:bold;"><span style="color:white;">金額</span><span style="color:white;">時間</span><span style="color:white;">操作員</span><span style="color:white;">所在IP</span></span></p>');
          $.each(data.list,function(i,n){
          $("#detail").append('<p><span>'+ data.list[i][0] + '</span><span>' + data.list[i][2] + '</span><span>' + data.list[i][1] + '</span><span>' + data.list[i][3] + '</span></p>');
          })
          var prepage=page-1;
          var nextpage=page+1;
          if(prepage<=0){prepage=1;}
          if(nextpage>data.amountPage){nextpage=data.amountPage;}
          $("#detail").append('<p style="background-color:#CAD7F7;"><span style="font:blod;margin-top:20px;">當前頁:'+ page + '/'+ data.amountPage + '</span><span><button   style="font:12px; width:60px; height:19px;  FONT-SIZE: 12px; " onclick="loaddatapage('+ prepage +')">上一頁</button><button style="font:12px; width:60px; height:19px;  FONT-SIZE: 12px; " onclick="loaddatapage('+ nextpage +')">下一頁</button></span></p>');
          $("#back").html('')
          }
          });
          }

          服務器端使用比較普遍的分頁方式,使用hibernate+struts2:

          ACTION中部分代碼:

           private List list;
           private int PageSize=10,amountPage;
           private String pagenum; 

           public String list() throws Exception {
            int s = JinerManager.CountCreditDetail();
            int a = s%PageSize;
            if(a!=0){
             amountPage = s/PageSize+1;
                }else{
             amountPage = s/PageSize;
                }
            this.setAmountPage(amountPage);
            this.setPagenum(pagenum);
            this.setList(JinerManager.Find(pagenum,PageSize));
            return SUCCESS;
           }

          JinerManager.Find(pagenum,PageSize)調用了service,使用hibernate的數據庫分頁查找數據:

           public List FindCreditDetail(String pagenum,int pagesize){
            Query queryObject = getSession().createSQLQuery("select i_add_money ,s_user_id,to_char(d_date,'yyyy-mm-dd hh24:mi:ss' ),s_ip from jiner t order by i_id desc");
            if (pagenum == null|pagenum == ""){
             queryObject.setFirstResult(0);
             queryObject.setMaxResults(pagesize);
                   }else{
                    try{
                    Integer p = (Integer.valueOf(pagenum)-1) * pagesize;
                    queryObject.setFirstResult(p);
                    queryObject.setMaxResults(pagesize);
                    }catch (Exception e){
                     queryObject.setFirstResult(0);
                     queryObject.setMaxResults(pagesize);  
                    }
                   }
            List result = queryObject.list();
            return result;
           }

          struts2配置,使用了jsonplugin:

           <package name="jiner"  extends="json-default"  namespace="/jiner">
                <action name="jiner" class="com.pixel.websino.admin.web.action.CreditdetailAction">
                  <result type="json"/>
                </action>
            </package>
          posted on 2008-11-14 11:49 lzj520 閱讀(469) 評論(0)  編輯  收藏 所屬分類: Ajax個人學習日記Struts2
          主站蜘蛛池模板: 樟树市| 敖汉旗| 佛山市| 清苑县| 平安县| 偃师市| 临洮县| 永川市| 鄂托克旗| 正蓝旗| 潼南县| 称多县| 扬中市| 宁陵县| 大新县| 云安县| 廉江市| 灵山县| 莱西市| 上高县| 鄂托克旗| 永清县| 泸西县| 盐源县| 甘肃省| 陇川县| 晋宁县| 南京市| 扬州市| 清水县| 南丰县| 扶风县| 郯城县| 昌吉市| 吴忠市| 凉城县| 吉安市| 临澧县| 北碚区| 丹棱县| 若羌县|