【发布时间】:2013-04-19 18:05:22
【问题描述】:
编辑:这只发生在我使用 sScrollX 时。 -- http://jsfiddle.net/4n3Hp/ -- 不幸的是,这个特殊的用例需要它。
由于 tabletools 对我不起作用,由于它使用闪存和一些不适合我的情况的行为,我正在尝试编写一个 excel 导出。我已经提取了所有必要的单元格信息,但是 DataTables 对标题做了一些奇怪的事情。
假设我尝试过的 listTable 的 div(这是通用的,但适用于示例)
$('#listTable').dataTable().fnSettings().nTable.getElementsByTagName('thead')
这让我得到了表格标题行,但它已被更改。
<th class="sorting" role="columnheader" tabindex="0"
aria-controls="listTable" rowspan="1" colspan="1"
style="width: 130px; padding-top: 0px; padding-bottom: 0px;
border-top-width: 0px; border-bottom-width: 0px; height: 0px;"
aria-label="Email Recipients: activate to sort column ascending"></th>
这很好,除了原始标题文本已被删除,正是我需要的。
查看 DOM,它显示有两个实际的表,其中一个包含单元格数据,另一个是封装有“datatables_scrollHeadInner”类 div 的新表。 (如果我在一个页面上有多个表,这在提供通用解决方案时会出现问题。)
虽然我认为我有一个 hackaround 解决方案(从 aria-label 中拉出并用冒号分隔,并且永远不要在标题中使用冒号;或者做一些尴尬的 jquery 导航),但我想知道我该怎么做优雅地从数据表中提取标题。
【问题讨论】:
标签: jquery datatables