Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery bootgrid 标题单元格中的jQuery Bootgrid条件图标_Jquery Bootgrid - Fatal编程技术网

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');
    }

});