DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> BootStrap Table 分頁後重新搜索問題的解決辦法
BootStrap Table 分頁後重新搜索問題的解決辦法
編輯:關於JavaScript     

前提: 自定義搜索且有分頁功能,比如搜索產品名的功能.

現象:當搜索充氣娃娃的時候返回100條記錄,翻到第五頁. 這時候搜索按摩棒,數據有200條,結果應該是第一頁的記錄,但是實際顯示的還是第五頁的結果. 也就是重新搜索後,pagenumber沒有變.

按網上大部分說的:重新設置option就行了

$('#tableList').bootstrapTable({pageNumber:1,pageSize:10});

以上是解決不了這個問題。

正確做法是

$("#table").bootstrapTable('destroy');先要將table銷毀,否則會保留上次加載的內容

TableObj.oTableInit();重新初使化表格。

代碼如下所示:

<script type="text/javascript">
$(function () {
TableObj.oTableInit();
$("#btn_query").click(function () {
$("#tb_departments").bootstrapTable('destroy');
TableObj.oTableInit();
});
$("#btn_edit").click(function () {
$.messager.alert('提示', '請選擇要刪除的記錄');
});
$("#btn_add").click(function () {
var actionUrl = "@Url.Action("_create")";
var param = {};
Tool.ShowModal(actionUrl, param, "新增");
})
});
var TableObj = {
//初始化Table
oTableInit: function () {
$('#tb_departments').bootstrapTable({
url: '/Department/GetDepartment', //請求後台的URL(*)
method: 'get', //請求方式(*)
toolbar: '#toolbar', //工具按鈕用哪個容器
striped: true, //是否顯示行間隔色
cache: false, //是否使用緩存,默認為true,所以一般情況下需要設置一下這個屬性(*)
pagination: true, //是否顯示分頁(*)
sortable: false, //是否啟用排序
sortOrder: "asc", //排序方式
// queryParams: TableObj.queryParams(this), //傳遞參數(*)
queryParams: function (params) {
return {
PagedIndex: this.pageNumber,
PagedSize: this.pageSize,
DeptName: $("#txt_search_departmentname").val(),
};
},
sidePagination: "server", //分頁方式:client客戶端分頁,server服務端分頁(*)
pageNumber: 1, //初始化加載第一頁,默認第一頁
pageSize: 5, //每頁的記錄行數(*)
pageList: [5, 10, 25, 50, 100], //可供選擇的每頁的行數(*)
search: false, //是否顯示表格搜索,此搜索是客戶端搜索,不會進服務端,所以,個人感覺意義不大
strictSearch: true,
showColumns: true, //是否顯示所有的列
showRefresh: true, //是否顯示刷新按鈕
minimumCountColumns: 2, //最少允許的列數
clickToSelect: true, //是否啟用點擊選中行
height: 500, //行高,如果沒有設置height屬性,表格自動根據記錄條數覺得表格高度
uniqueId: "deptID", //每一行的唯一標識,一般為主鍵列
idField: 'deptID',
showToggle: true, //是否顯示詳細視圖和列表視圖的切換按鈕
cardView: false, //是否顯示詳細視圖
detailView: false, //是否顯示父子表
columns: [
{
//field: 'deptID',
//field: 'deptID',
checkbox: true
},
{
field: 'DeptName',
title: '部門名稱'
}, {
field: 'CreateBy',
title: '添加人'
}, {
field: 'CreateDT',
title: '添加日期',
formatter: function (val) {
return val == 'undefined' || !val ? '-' : val.formatterString(false);
}
}
]
});
}
};
//保存
function Save() {
Tool.SaveModal($('#tb_departments'));
}
</script>

以上所述是小編給大家介紹的BootStrap Table 分頁後重新搜索問題的解決辦法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved