1.在table.js文件里面找到columnDefaults列的配置,添加红色
以下的参数名。
// Bootstrap-table 列配置
columnDefaults: {
align: 'center',
valign: 'middle',
seachParamName:'',//查询参数名,没设置就默认的key
},
config: {
firsttd: 'tbody tr td:first-child:not(:has(div.card-views))',
toolbar: '.toolbar',
refreshbtn: '.btn-refresh',
addbtn: '.btn-add',
editbtn: '.btn-edit',
delbtn: '.btn-del',
multibtn: '.btn-multi',
disabledbtn: '.btn-disabled',
editonebtn: '.btn-editone',
dragsortfield: 'weigh',
},
2.在bootstrap-table-ext.js文件中大概是128行中,添加以下红
色的内容
var seachName = vObjCol.field;
var seachParam = $.trim(vObjCol.seachParamName);
if(seachParam != undefined && seachParam !=''){
seachName = seachParam;
}
var query = UtilBack.api.query(seachName);
并将140行的代码注释掉, 放到144行中,如下图:
并将165、178行的将vObjCol.field替换成seachName,如下图:
将186行之后部分代码替换成如下红色的代码,如下图:
if (/BETWEEN$/.test(vObjCol.operate)) {
ColumnsForSearch.push(vObjCol);
var defaultValueArr = /\|/.test(defaultValue) ? defaultValue.split('|') : ['', ''];
var seachNameArr = /\|/.test(seachName) ? seachName.split('|') : [seachName+'_start', seachName+'_end'];
htmlForm.push(sprintf('<input type="hidden" class="form-control operate" name="field-%s" data-name="%s" value="%s" readonly>', seachNameArr[0], seachNameArr[0], vObjCol.operate));
htmlForm.push(sprintf('<input type="hidden" class="form-control operate" name="field-%s" data-name="%s" value="%s" readonly>', seachNameArr[1], seachNameArr[1], vObjCol.operate));
var placeholderArr = /\|/.test(placeholder) ? placeholder.split('|') : [placeholder, placeholder];
htmlForm.push(sprintf('<input type="%s" class="%s" name="%s" value="%s" placeholder="%s" id="%s" %s %s>', type, addclass, seachNameArr[0], defaultValueArr[0], placeholderArr[0], seachNameArr[0], style, data));
htmlForm.push(sprintf(' - <input type="%s" class="%s" name="%s" value="%s" placeholder="%s" id="%s" %s %s>', type, addclass, seachNameArr[1], defaultValueArr[1], placeholderArr[1], seachNameArr[1], style, data));
} else {
htmlForm.push(sprintf('<input type="hidden" class="form-control operate" name="field-%s" data-name="%s" value="%s" readonly>', seachName, seachName, vObjCol.operate));
htmlForm.push(sprintf('<input type="%s" class="%s" name="%s" value="%s" placeholder="%s" id="%s" %s %s>', type, addclass, seachName, defaultValue, placeholder, seachName, style, data));
}
在406行之后部分代码更改为截图的代码。
/********** 开始 ************/
var queryParam = {};
var filter = searchQuery.filter;
$.each(filter,function(key,value){
queryParam[key] = value;
});
queryParam['search'] = params.search;
queryParam['sort'] = params.sort;
queryParam['order'] = params.order;
queryParam['offset'] = params.offset;
queryParam['limit'] = params.limit;
/*********** 结束 ***********/
return queryParam;
3.使用方式如下图