如何防止数据表更新列标题文本

时间:2016-01-20 00:36:21

标签: javascript jquery datatables

我有数据表的复杂标题,我在表初始化之前附加了标题行。

然而,当从服务器收到数据时,它更新了我不想更新的标题。

<tr role="row" class="header-row first-row-table-header">
    <th colspan="6"></th>
    <th class="dt-center" colspan="1">2015</th>
    <th class="dt-center" colspan="1">2016</th>
    <th colspan="2"></th>
</tr>
<tr role="row" class="header-row second-row-table-header">
    <th>Year</th>
    <th>Make</th>
    <th>Model</th>
    <th>Badge /Series</th>
    <th>Series</th>
    <th>Trans.</th>
    <th>Dec</th>
    <th>Jan</th>
    <th>Age. per Period</th>
    <th>Total</th></tr>
<tr role="row" class="header-row third-row-table-header summary-header">
    <th class="dt-right" colspan="6">Total Per Month</th>
    <th column-data="Dec 2015"></th>
    <th column-data="Jan 2016"></th>
    <th column-data="Average"></th>
    <th column-data="Total"></th>
</tr>

我的专栏定义 当数据到达第一行的标题时,预计将显示具有2015年和2016年标题的列。然而,它显示了Dec&#39;和&#39; Jan&#39; 这两列的列定义是

{
    data: "Dec 2015"
    headerGroup: "Dec 2015"
    orderable: false
    targets: 6
    title: "Dec"
}

 {
      data: "Jan 2016"
      headerGroup: "Jan 2016"
      orderable: false
      targets: 7
      title: "Jan"
 }

来自服务器的数据如下:

  {
      Average: "1"
      Badge: ""
      Dec 2015: "1"
      Jan 2016: "1"
      Make: "BMW"
      Model: "M135i"
      Series: "F20"
      Total: "2"
      Transmission: "Auto"
      Year: "2012"
  }

如何在数据更新后阻止更改第一行的标题列文本?

PS:这是显示问题。您可能需要等待一段时间,因为服务器速度很慢。

http://live.datatables.net/habokasi/4/edit

1 个答案:

答案 0 :(得分:0)

你需要用<thead>包装标题行,否则JQuery数据表将使用&#34;标题&#34;在columnDef中指定。 https://datatables.net/reference/option/columns.title

有关html表结构的详细信息,请参阅https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table

或者您可以在columnDef中设置正确的标题标题:

{
data: "Dec 2015"
headerGroup: "Dec 2015"
orderable: false
targets: 6
title: "2015"

}