dataTables添加Font Awesome图标而不是列名

时间:2017-04-12 16:59:07

标签: datatables font-awesome

我是DataTables的新手,我有一个简单的数据表,我尝试使用fa-info-circle添加Font Awesome render图片而不是一个列标题,如:

table = $("#datatable-buttons").DataTable({
            data: document.pvm.tableContent(),
            columns: [
            { data: "Info", render: function (data, type, full, meta) { if (type === 'display') return '<span style="font-size:75%" class="fa fa-info-circle"></span>' } },
            { data: "WiFi", title: "WiFi" },
            { data: "GPS", title: "GPS" },
            ],
            fixedHeader: true,
            dom: "lfBrtip",
            buttons: [
              {
                  extend: "copy",
                  className: "btn-sm"
              },
              {
                  extend: "csv",
                  className: "btn-sm",
                  filename: "DeviceMnag"
              },
              {
                  extend: "excel",
                  className: "btn-sm",
                  filename: "DeviceMnag"
              },
              {
                  extend: "pdfHtml5",
                  className: "btn-sm",
                  filename: "DeviceMnag"
              },
              {
                  extend: "print",
                  className: "btn-sm"
              },
            ],
        });

但似乎我的图标不是仅位于Info列的标题中,标题中没有图标,而是在数据列中而不是正确的数据。是否可以为标题中的一个字段添加一个图标?

1 个答案:

答案 0 :(得分:1)

我相信当你说“列标题”时你的意思是标题? render()用于呈现列数据,您可以通过title属性设置列标题:

var table = $('#example').DataTable({
   columnDefs: [{ 
     targets: 0,
     data: '0',  //just use DOM
     title: '<i class="fa fa-info-circle fa-lg"></i>'
  }]     
}) 

演示 - &gt;的 http://jsfiddle.net/6kp3tvpb/

title也可以是一个函数:

title: function() {
  return '<i class="fa fa-info-circle fa-lg"></i>'
}

但请注意,此回调仅称为一次