Jquery bootgrid 标题单元格中的jQuery Bootgrid条件图标
如果满足条件,我想在标题单元格中添加一个图标。 我知道它在文档中提到了这一点,但没有详细说明如何添加自己的内容Jquery bootgrid 标题单元格中的jQuery Bootgrid条件图标,jquery-bootgrid,Jquery Bootgrid,如果满足条件,我想在标题单元格中添加一个图标。 我知道它在文档中提到了这一点,但没有详细说明如何添加自己的内容 我所尝试的: 定义我自己的模板: templates: { headerCell: '<th data-column-id="{{ctx.column.id}}">{{ctx.column.text}}{{ctx.column.myCustomIcon}}</th>', } 模板:{ headerCell:{{ctx.column.text}{{{c
我所尝试的: 定义我自己的模板:
templates: {
headerCell: '<th data-column-id="{{ctx.column.id}}">{{ctx.column.text}}{{ctx.column.myCustomIcon}}</th>',
}
模板:{
headerCell:{{ctx.column.text}{{{ctx.column.myCustomIcon}}},
}
然后在格式化程序中,添加自定义字段
formatters: {
myCustomField: function(column, row){
column.myCustomIcon = "";
if (item[column.id] == 0) {
return "";
}
column.myCustomIcon = '<i class="fa fa-shield"></i>';
}
}
格式化程序:{
myCustomField:函数(列、行){
column.myCustomIcon=“”;
if(项[column.id]==0){
返回“”;
}
column.myCustomIcon='';
}
}
如果不起作用,请提供一些指导。我在不使用模板的情况下成功地做到了这一点,并在他们的原型中创建了一个新方法 只需将此方法添加到他们的库中(jquery.bootgrid.js): 这必须放在第974行定义
var Grid=function(元素,选项)
之后
然后,可以在加载网格后调用此方法:
var columnNameChanged = false;
var grid = $('#my-grid').bootgrid(/* your options here */);
grid.on("loaded.rs.jquery.bootgrid", function () {
if (!columnNameChanged) {
columnNameChanged = true;
var columns = grid.bootgrid('getColumnSettings');
var column = columns[1];
column.text = '<i class="fa fa-shield"></i> ' + column.text;
grid.bootgrid('recreateTableHeader');
}
});
var columnnamchanged=false;
var grid=$(“#我的网格”).bootgrid(/*您在这里的选项*/);
on(“loaded.rs.jquery.bootgrid”,函数(){
如果(!columnNameChanged){
columnNameChanged=true;
var columns=grid.bootgrid('getColumnSettings');
var列=列[1];
column.text=''+column.text;
bootgrid('recreateTableHeader');
}
});
请注意,我正在更改列的text属性,将图标与当前的列.text
(保存您放入HTML中的文本)连接起来。您可以在格式化程序中或像我的示例一样在加载的事件中更改此设置,但由于格式化程序每行调用一次,并且我在图标标记后追加列。text
,因此最终会出现类似列名称的列文本
var columnNameChanged = false;
var grid = $('#my-grid').bootgrid(/* your options here */);
grid.on("loaded.rs.jquery.bootgrid", function () {
if (!columnNameChanged) {
columnNameChanged = true;
var columns = grid.bootgrid('getColumnSettings');
var column = columns[1];
column.text = '<i class="fa fa-shield"></i> ' + column.text;
grid.bootgrid('recreateTableHeader');
}
});