Jquery:ajax實(shí)現(xiàn)翻頁無刷新功能代碼
更新時(shí)間:2013年08月05日 16:41:01 作者:
ajax實(shí)現(xiàn)翻頁在實(shí)際應(yīng)用中還是比較常見的,實(shí)現(xiàn)ajax翻頁有兩部分:js部分、html部分,具體如下,感興趣的朋友可以參考下,希望對大家有所幫助
不多說,直接貼代碼:
下面是js部分:
var pageSize = "10";//每頁行數(shù)
var currentPage = "1";//當(dāng)前頁
var totalPage = "0";//總頁數(shù)
var rowCount = "0";//總條數(shù)
var params="";//參數(shù)
var url="activity_list.action";//action
$(document).ready(function(){//jquery代碼隨著document加載完畢而加載
//分頁查詢
function queryForPages(){
$.ajax({
url:url,
type:'post',
dataType:'json',
data:"qo.currentPage="+currentPage+"&qo.pageSize="+pageSize+params,
success:function callbackFun(data){
//解析json
var info = eval("("+data+")");
//清空數(shù)據(jù)
clearDate();
fillTable(info);
}
});
}
//填充數(shù)據(jù)
function fillTable(info){
if(info.length>1){
totalPage = info[info.length-1].totalPage;
var tbody_content="";//不初始化字符串"",會默認(rèn)"undefined"
for(var i=0 ; i<info.length-1;i++){
tbody_content +="<tr>"
+"<td data-title='序號' >"+(i+1+(currentPage-1)*pageSize)+"</td>"
+"<td data-title='標(biāo)題'>"+info[i].title.substr(0,20)+"</td>"
+"<td data-title='地點(diǎn)'>"+info[i].address.substr(0,6)+"</td>"
+"<td data-title='已報(bào)名'>"+info[i].quota_sign+"人</td>"
+"<td data-title='類別'>"+info[i].type+"</td>"
+"<td data-title='操作'><a href='<%=request.getContextPath()%>/activity_edit.action?id="+info[i].id+"'>編輯</a></td>"
+"</tr>"
$("#t_body").html(tbody_content);
}
}else{
$("#t_head").html("");
$("#t_body").html("<div style='height: 200px;width: 700px;padding-top: 100px;' align='center'>"+info.msg+"</div>");
}
}
//清空數(shù)據(jù)
function clearDate(){
$("#t_body").html("");
}
//搜索活動
$("#searchActivity").click(function(){ queryForPages(); });
//首頁
$("#firstPage").click(function(){
currentPage="1";
queryForPages();
});
//上一頁
$("#previous").click(function(){
if(currentPage>1){
currentPage-- ;
}
queryForPages();
});
//下一頁
$("#next").click(function(){
if(currentPage<totalPage){
currentPage++ ;
}
queryForPages();
});
//尾頁
$("#last").click(function(){
currentPage = totalPage;
queryForPages();
});
});
下面是html代碼部分:
<table class="table style-5">
<thead id="t_head">
<tr>
<th>序號</th>
<th>標(biāo)題</th>
<th>地點(diǎn)</th>
<th>已報(bào)名</th>
<th>類別</th>
<th>操作</th>
</tr>
</thead>
<tbody id="t_body">
<!-- ajax填充列表 -->
</tbody>
</table>
<button id="firstPage">首頁</button>
<button id="previous">上一頁</button>
<button id="next">下一頁</button>
<button id="last">尾頁</button>
下面是js部分:
復(fù)制代碼 代碼如下:
var pageSize = "10";//每頁行數(shù)
var currentPage = "1";//當(dāng)前頁
var totalPage = "0";//總頁數(shù)
var rowCount = "0";//總條數(shù)
var params="";//參數(shù)
var url="activity_list.action";//action
$(document).ready(function(){//jquery代碼隨著document加載完畢而加載
//分頁查詢
function queryForPages(){
$.ajax({
url:url,
type:'post',
dataType:'json',
data:"qo.currentPage="+currentPage+"&qo.pageSize="+pageSize+params,
success:function callbackFun(data){
//解析json
var info = eval("("+data+")");
//清空數(shù)據(jù)
clearDate();
fillTable(info);
}
});
}
//填充數(shù)據(jù)
function fillTable(info){
if(info.length>1){
totalPage = info[info.length-1].totalPage;
var tbody_content="";//不初始化字符串"",會默認(rèn)"undefined"
for(var i=0 ; i<info.length-1;i++){
tbody_content +="<tr>"
+"<td data-title='序號' >"+(i+1+(currentPage-1)*pageSize)+"</td>"
+"<td data-title='標(biāo)題'>"+info[i].title.substr(0,20)+"</td>"
+"<td data-title='地點(diǎn)'>"+info[i].address.substr(0,6)+"</td>"
+"<td data-title='已報(bào)名'>"+info[i].quota_sign+"人</td>"
+"<td data-title='類別'>"+info[i].type+"</td>"
+"<td data-title='操作'><a href='<%=request.getContextPath()%>/activity_edit.action?id="+info[i].id+"'>編輯</a></td>"
+"</tr>"
$("#t_body").html(tbody_content);
}
}else{
$("#t_head").html("");
$("#t_body").html("<div style='height: 200px;width: 700px;padding-top: 100px;' align='center'>"+info.msg+"</div>");
}
}
//清空數(shù)據(jù)
function clearDate(){
$("#t_body").html("");
}
//搜索活動
$("#searchActivity").click(function(){ queryForPages(); });
//首頁
$("#firstPage").click(function(){
currentPage="1";
queryForPages();
});
//上一頁
$("#previous").click(function(){
if(currentPage>1){
currentPage-- ;
}
queryForPages();
});
//下一頁
$("#next").click(function(){
if(currentPage<totalPage){
currentPage++ ;
}
queryForPages();
});
//尾頁
$("#last").click(function(){
currentPage = totalPage;
queryForPages();
});
});
下面是html代碼部分:
復(fù)制代碼 代碼如下:
<table class="table style-5">
<thead id="t_head">
<tr>
<th>序號</th>
<th>標(biāo)題</th>
<th>地點(diǎn)</th>
<th>已報(bào)名</th>
<th>類別</th>
<th>操作</th>
</tr>
</thead>
<tbody id="t_body">
<!-- ajax填充列表 -->
</tbody>
</table>
<button id="firstPage">首頁</button>
<button id="previous">上一頁</button>
<button id="next">下一頁</button>
<button id="last">尾頁</button>
您可能感興趣的文章:
- JQuery的Ajax請求實(shí)現(xiàn)局部刷新的簡單實(shí)例
- JQuery+Ajax無刷新分頁的實(shí)例代碼
- jQuery+AJAX實(shí)現(xiàn)無刷新下拉加載更多
- jQuery實(shí)現(xiàn)form表單基于ajax無刷新提交方法詳解
- jQuery Pagination Ajax分頁插件(分頁切換時(shí)無刷新與延遲)中文翻譯版
- jQuery實(shí)現(xiàn)AJAX定時(shí)刷新局部頁面實(shí)例
- 基于jquery ajax 用戶無刷新登錄方法詳解
- JS+Ajax+Jquery實(shí)現(xiàn)頁面無刷新分頁以及分組 超強(qiáng)的實(shí)現(xiàn)
- 基于Jquery 解決Ajax請求的頁面 瀏覽器后退前進(jìn)功能,頁面刷新功能實(shí)效問題
- jQuery ajax請求struts action實(shí)現(xiàn)異步刷新
相關(guān)文章
jQuery中toggleClass()方法用法實(shí)例
這篇文章主要介紹了jQuery中toggleClass()方法用法,實(shí)例分析了toggleClass()方法的功能、定義及對添加或移除匹配元素的一個(gè)或多個(gè)類進(jìn)行切換的使用技巧,需要的朋友可以參考下2015-01-01jQuery實(shí)現(xiàn)右側(cè)顯示可向左滑動展示的深色QQ客服效果代碼
這篇文章主要介紹了jQuery實(shí)現(xiàn)右側(cè)顯示可向左滑動展示的深色QQ客服效果代碼,涉及jQuery控制頁面元素樣式動態(tài)變換的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10jQuery.datatables.js插件用法及api實(shí)例詳解
這篇文章主要介紹了jquery插件之jQuery.datatables.js用法及api實(shí)例詳解,本文給大家介紹的非常詳細(xì)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-10-10jQuery插件實(shí)現(xiàn)表格隔行換色且感應(yīng)鼠標(biāo)高亮行變色
實(shí)現(xiàn)表格隔行換色,且感應(yīng)鼠標(biāo)行變色的方法有很多,在本文將為大家介紹的是使用jQuery插件來實(shí)現(xiàn),具體如下,感興趣的朋友可以練練手2013-09-09基于jquery實(shí)現(xiàn)的定時(shí)顯示與隱藏div廣告的實(shí)現(xiàn)代碼
有時(shí)候我們需要在jquery中要顯示與隱藏層,很簡單的方法就是直接使用hide與show方法就可以了,但要定時(shí)我們需要結(jié)合setTimeout函數(shù)來實(shí)現(xiàn)2013-08-08