bootstraptable 分页循环_bootstrap-table 分页的问题

文档网站 http://wenzhixin.net.cn/p/bootstrap-table/docs/examples.html#via-javascript-table

问题1 :服务器端取不到form值,querystring没有问题, 但是request.form取不到值

解决:这是ajax的问题,原代码使用原生的ajax。   1可以用读流文件解决。2 如果想用request.form 方式,设置  contentType: "application/x-www-form-urlencoded",

$('#tableList').bootstrapTable({

method: 'post',

url: "",

height: $(window).height() - 200,

striped: true,

dataType: "json",

pagination: true,

"queryParamsType": "limit",

singleSelect: false,

contentType: "application/x-www-form-urlencoded",

2 设置传递到服务器的参数

方法:

function queryParams(params) {

return {

pageSize: params.limit,

pageNumber: params.pageNumber,

UserName: 4

};

}

$('#tableList').bootstrapTable({

method: 'post',

url: "",

height: $(window).height() - 200,

striped: true,

dataType: "json",

pagination: true,

queryParams: queryParams,

3 后台取不到 pageSize 信息

解决:1在queryParams中设置

2  在bootstrap-table.minjs文件 修改源文件为"limit"===this.options.queryParamsType&&(e={limit:e.pageSize,pageNumber:e.pageNumber,

修改 bootstrap-table.js 也可以

if (this.options.queryParamsType === 'limit') {

params = {

search: params.searchText,

sort: params.sortName,

order: params.sortOrder

};

if (this.options.pagination) {

params.limit = this.options.pageSize;

params.pageNumber=this.options.pageNumber,

params.offset = this.options.pageSize * (this.options.pageNumber - 1);

}

}

配置加入  "queryParamsType": "limit",

完整

$(document).ready(function() {

$('#tableList').bootstrapTable({

method: 'post',

url: "getcompapylist",

height: $(window).height() - 200,

striped: true,

dataType: "json",

pagination: true,

"queryParamsType": "limit",

singleSelect: false,

contentType: "application/x-www-form-urlencoded",

pageSize: 10,

pageNumber:1,

search: false, //不显示 搜索框

showColumns: false, //不显示下拉框(选择显示的列)

sidePagination: "server", //服务端请求

queryParams: queryParams,

//minimunCountColumns: 2,

responseHandler: responseHandler,

columns: [

{

field: 'CompanyId',

checkbox: true

},

{

field: 'qq',

title: 'qq',

width: 100,

align: 'center',

valign: 'middle',

sortable: false

}

,

{

field: 'companyName',

title: '姓名',

width: 100,

align: 'center',

valign: 'middle',

sortable: false

}

]

});

});

function responseHandler(res) {

if (res.IsOk) {

var result = b64.decode(res.ResultValue);

var resultStr = $.parseJSON(result);

return {

"rows": resultStr.Items,

"total": resultStr.TotalItems

};

} else {

return {

"rows": [],

"total": 0

};

}

}

//传递的参数

function queryParams(params) {

return {

pageSize: params.limit,

pageNumber: params.pageNumber,

UserName: 4

};

}

4   分页后,重新搜索的问题

前提: 自定义搜索且有分页功能,比如搜索产品名的功能.

现象:当搜索充气娃娃的时候返回100条记录,翻到第五页.  这时候搜索按摩棒,数据有200条,结果应该是第一页的记录,但是实际显示的还是第五页的结果.  也就是重新搜索后,pagenumber没有变.

解决:重新设置option就行了.

function search(){

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

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Bootstrap Table 是一个基于 Bootstrap 的可扩展的表格插件,支持多种功能扩展、多种数据源以及自定义格式化等。如果要在 Bootstrap Table 中使用日期控件,可以使用 Bootstrap Datepicker 插件。 下面是一个使用 Bootstrap Table 和 Bootstrap Datepicker 的例子: ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Bootstrap Table Demo</title> <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/bootstrap-table/1.18.1/bootstrap-table.min.css"> <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css"> </head> <body> <div class="container"> <table id="table" data-toggle="table" data-url="data.json" data-pagination="true" data-search="true" data-show-refresh="true" data-show-toggle="true" data-show-columns="true"> <thead> <tr> <th data-field="id">ID</th> <th data-field="name">Name</th> <th data-field="date" data-formatter="dateFormat">Date</th> </tr> </thead> </table> </div> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/bootstrap-table/1.18.1/bootstrap-table.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"></script> <script> function dateFormat(value, row, index) { return value ? moment(value).format('YYYY-MM-DD') : ''; } $(document).ready(function() { $('#table').bootstrapTable(); $('#table').on('editable-save.bs.table', function(e, field, row, oldValue, $el) { if (field === 'date') { row.date = moment(row.date).toISOString(); } }); $('.datepicker').datepicker({ format: 'yyyy-mm-dd', autoclose: true }); }); </script> </body> </html> ``` 在这个例子中,我们首先引入了 Bootstrap、Bootstrap Table 和 Bootstrap Datepicker 的 CSS 和 JavaScript 文件。然后在 HTML 中创建一个表格,并指定了数据源、分页、搜索、刷新、切换列等选项。 表格中的日期列使用了 `data-formatter` 属性来指定自定义格式化函数 `dateFormat`,这个函数使用了 Moment.js 库来将日期格式化成 YYYY-MM-DD 的形式。 在 JavaScript 中,我们使用了 jQuery 的 `$(document).ready()` 函数来初始化 Bootstrap Table,并在表格保存编辑后将日期格式化成 ISO 8601 格式。我们还使用了 Bootstrap Datepicker 来创建一个日期控件,以便用户可以方便地选择日期。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值