如何使用数据表动态更改行的字体大小?

时间:2016-03-21 09:09:55

标签: javascript jquery datatables

我检查了数据表api,但在行()函数下看不到任何内容。基本上我想要实现这种功能:

var myTable = $('#example').DataTable();
myTable.row(i).fontSize = dynamicValue;

或者

myTable.row(i).css('font-size', dynamicValue);

1 个答案:

答案 0 :(得分:3)

如果您需要持久解决方案,则 可以通过API。如果您有一个dataTable实例:

var table = $('#example').DataTable()  

和CSS类:

.larger-font {
  font-size: 120%;
}

然后您可以通过以下方式永久更改点击行的font-size

$('#example').on('click', 'tr', function() {
  table.row(this).nodes().to$().addClass('larger-font')
})    

row(this)为您提供内部行实例
nodes()为您提供了整个<tr> DOM节点
to$()将该DOM节点作为jQuery实例返回 addClass()添加了CSS

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

如果你想操纵内联CSS而不是注入类,你只需要这样做:

table.row(this).nodes().to$().css('font-size', '120%')

to$()没有必要,只是方便 - 您可以定位&#34; raw&#34; DOM也是:

table.row(this).nodes()[0].style.cssText = 'font-size:120%;

但不管怎样,重要的是通过API检索DOM节点,而不是通过jQuery或任何其他方式。