解决JS组件bootstrap table分页实现过程中遇到的问题
来源: 阅读:3488 次 日期:2016-07-06 17:00:40
温馨提示: 小编为您整理了“解决JS组件bootstrap table分页实现过程中遇到的问题”,方便广大网友查阅!

这篇文章主要介绍了JS组件bootstrap table分页实现过程中遇到的问题,感兴趣的小伙伴们可以参考一下

本文为大家分享了bootstrap-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",

完整

<script type="text/javascript">

$(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

};

}

</script>

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

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

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

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

function search(){

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

}

以上就是本文的全部内容,希望对大家的学习有所帮助。

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map