在bootstraptable表头中添加筛选条件

本文介绍如何在BootstrapTable中添加表头筛选条件,通过代码示例展示如何实现自定义搜索框,包括文本、下拉菜单和弹窗多选搜索功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文在bootstraptable表头添加筛选条件,代码如下:

var personStatuCode = "";   //保存查询的状态值
    
function iniTable() {
   let $table = $("#table");
    $table.bootstrapTable("destroy");
    $table.bootstrapTable({
        method: "post",
        dataType: "json",
        contentType: "application/json",
        url: "",
        dataField: "rows",
        queryParamsType: "json",
        queryParams: function (params) {
            return {
                "pageNum": params.pageNumber,
                "pageSize": params.pageSize,
                	...
                "personStatu": personStatuCode
            };
        },
        pageNumber: 1,
        pagination: true,
        sidePagination: "server",
        pageSize: 10,
        pageList: [5, 10, 20, 30, 50, 100],
        striped: false,
        clickToSelect: true,
        search: true,
        locale: "zh-CN",
        onPostHeader: function () {
        	//刷新完列表,表头也跟着刷新了,所以把状态值复制进去
        	//保证选择筛选条件后列表刷新完还是选择的刚刚选择的条件,不然每次选择完条件显示的都是默认的选项
            $("#personStatu").val(personStatuCode)
        },
        columns: [
            {
                field: 'checked',
                checkbox: true,
            },
            {
                title: "姓名",
                field: "name",
                align: "center",
            },
            {
                title: "<select id='personStatu' class='form-control' style='width: 100%;padding:6px 0px;' οnchange='filtrate()'>" +
                    "<option value=''>全部状态</option>" +
                     "<option value='0'>在职</option>" +
                     "<option value='1'>病假</option>" +
                     "<option value='2'>事假</option>" +
                     "<option value='3'>产假</option>" +
                        "</select>",
                field: "personStatu",
                align: "center",
                formatter: function (value, row, index) {
                    if (value === "0") {
                        return "<span style='color:lightgreen;font-weight: bold'>在职</span>";
                    } else {
                        return "<span style='color:red;font-weight: bold'>" + personStatu[value] + "</span>";
                    }
                }
            }
            ...
        ]
    });
}

function filtrate(){
	//保存状态值
    personStatuCode =  $("#personStatu").val();
    //并刷新列表
    iniPersonTable();
}

还可以增加一层表头、搜索框、多选等等,具体可以看下方链接。

参考文章

bootstraptable表头添加自定义搜索框(带文本,下拉,弹窗多选搜索)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值