我正在使用twbs分页插件,每次点击页码时,都会触发一个ajax调用,并且每页提取10个结果。 在页面上传中,前10个结果被提取并分配给smarty变量。
这是tpl文件。我将获取的数组从php分配给变量batchesData并使用foreach循环迭代它以表格形式显示它
<table class="table table-striped projects tablesorter"
id="batchTable" style="font-size: 13px;">
<th>
.....
.....
</th>
<tbody>
{if !empty($batchesData)}
{foreach from = $batchesData key = filter item = value}
<tr>
......
......
</tr>
{/foreach}
</tbody>
</table>
现在点击页面,这里是我的js代码,我可以根据php中的页面来获取数组但是我如何更新它因为我想聪明的执行是在ajax调用之前完成的。请建议
$(function () {
window.pagObj = $('#pagination').twbsPagination({
totalPages: 35,
visiblePages: 10,
onPageClick: function (event, page) {
$.ajax({
type : 'POST',
url : '/mbatch/batch/listBatch',
data : {
page: page,
},
beforeSend : function() {
},
success : function(response) {
/* Handling */
},
error : function(data) {
new PNotify({
title: 'Notice',
text: JSON.parse(data.responseText).message,
type: 'error',
styling: 'bootstrap3'
});
}
});
}
}).on('page', function (event, page) {
});
});
任何线索都将受到高度赞赏。这是插件链接 http://www.jqueryscript.net/demo/Simple-Customizable-Pagination-Plugin-with-jQuery-Bootstrap-Twbs-Pagination/
答案 0 :(得分:2)
试试这个:
$(function () {
window.pagObj = $('#pagination').twbsPagination({
totalPages: 35,
visiblePages: 10,
onPageClick: function (event, page) {
$.ajax({
type : 'POST',
url : '/mbatch/batch/listBatch',
data : {
page: page,
},
beforeSend : function() {
},
success : function(response) {
$("#batchTable").empty();//clearing the current table rows
var dataRes=JSON.parse(response);
var resultCount=dataRes.length; //Assuming result set in array form.
//now creating row for each result set and appending to table
$.each(dataRes,function(index,value){
$("#batchTable").append("<tr>
<td>"+
value.item1+"
</td>
<td>"+
value.item2+"
</td>
</tr>")
})
},
error : function(data) {
new PNotify({
title: 'Notice',
text: JSON.parse(data.responseText).message,
type: 'error',
styling: 'bootstrap3'
});
}
});
}
}).on('page', function (event, page) {
});
});
假设您的回复将采用json格式。在success
功能