网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 解决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});
    }
    以上就是本文的全部内容,希望对大家的学习有所帮助。
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/15 6:31:57