看了好多插件,感觉用别人的还不如自己写个简单明了的呢,所以就有了今天的这片原文:
首先思路是这样的,利用hibernate实现分页,点下一页或者上一页的时候ajax请求取一次数据就好了。只要传入当前下一页的页码就好了。下面直接上代码讲
在页面加载的时候,把当前页面从后台request过来,(刷新页面的时候,当前页码肯定是第1页,不写也可以,直接给1)同时还要拿过来的是总共有多少页
$("#page_NO").html(<%=pageNumber%>);
让后自己写一个表格把这几项内容都放进去
<table width="350" border="0" cellpadding="0" cellspacing="0"
align="right" style="float: right">
<tr>
<td align="right">
当前第 <span id="page_NO"></span> 页
<a href="javascript:up();">上一页</a>
<a href="javascript:next();">下一页</a>
转到
<select id="current_page" οnchange="loadAttacEvents(this.value);">
<%
for (int i = 1; i <= pageCount; i++) {
%>
<option value="<%=i%>"><%=i%></option>
<%
}
%>
</select>
共 ${pageCount}页
</td>
</tr>
</table>
当前第1页 上一页 下一页 转到[ 10 ] 页 共 150页
上面的就是展示的效果
function up(){
var page=$("#page_NO").text();
loadAttacEvents(page-1);
}
function next(){
var pages=$("#page_NO").text();
var page=parseInt(pages)+1;
loadAttacEvents(page);
}
function loadAttacEvents(p){
if(p<=0){
alert('已经是第一页了!');
return false;
}
if(p><%=pageCount%>){
alert('最后一页了');
return false;
}
$("#current_page").val(p);
$("#page_NO").html(p);
$.ajax( {
type :"post",
url :"botnet_ajaxPage.action", //要请求的action
timeout : 20000,
data: "pageNO="+p, //传入的是页码
error : function() {
},
dataType : "json",
success : function(data) {
$.each(data,function(i, n){
if ("results" == i) {
str='';
str+='<table border="0" cellspacing="0" cellpadding="0" width="100%" class="table2 muma_list">';
str+='<tr><th>最早发现时间</th><th>最新发现时间</th><th>C&C IP地址</th><th>端口</th><th>所属僵尸网络</th><th>详细信息</th></tr>';
for(var i=0;i<n.length;i++){
str1=n[i];
str+='<tr>';
str+='<td>'+str1.latestTime+'</td>';
str+='<td>'+str1.earliestTime+'</td>';
str+='<td>'+str1.ip+'</td>';
str+='<td>'+str1.port+'</td>';
str+='<td></td>';
str+='<td><a href="javascript:loadMoreInfo(\''+str1.latestTime+'\',\''+str1.ip+'\',\''+str1.port+'\');" class="View">详细信息</a></td>';
str+='</tr>';
}
str+='</table>';
$("#changge_div").html(str); //分页内容的位置
}
});
}
});
}
很简单,不费脑筋的一个分页就是上述代码了