如何预防<;选项>;在导出javascript数据表时显示

如何预防<;选项>;在导出javascript数据表时显示,javascript,jquery,datatables,Javascript,Jquery,Datatables,我正在使用DataTables jQuery库创建表,并希望能够使用其按钮功能导出表。我有它的工作,除了当它做出口,它包括在过滤器的标题作为标题的一部分的所有 我用来生成用于搜索的选择过滤器的代码是: this.api().columns([2, 3]).every( function () { var column = this; var select = $('<br/><select><option value=""></option>

我正在使用DataTables jQuery库创建表,并希望能够使用其按钮功能导出表。我有它的工作,除了当它做出口,它包括在过滤器的标题作为标题的一部分的所有

我用来生成用于搜索的选择过滤器的代码是:

this.api().columns([2, 3]).every( function () {
  var column = this;
  var select = $('<br/><select><option value=""></option></select>')
    .appendTo( $(column.header()) )
    .on( 'change', function () {
      var val = $.fn.dataTable.util.escapeRegex(
      $(this).val()
    );
    column
      .search( val ? '^'+val+'$' : '', true, false )
      .draw();
  } );

  column.data().unique().sort().each( function ( d, j ) {
  select.append( '<option value="'+d+'">'+d+'</option>' )
} );
当我要导出列标题时,得到的结果是:

由a创建。法德拉。加西亚。富勒德。豪瑟杰。佩尔多莫

DataTables加载后的HTML为:

<th class="sorting" tabindex="0" aria-controls="table_iMZk6N3q3je7" rowspan="1" colspan="1" aria-label="Created By: activate to sort column ascending" style="width: 137px;">
  Created By
  <select>
    <option value=""></option>
    <option value="A. Fadhel">A. Fadhel</option>
    <option value="A. Garcia">A. Garcia</option>
    <option value="C. Fuller">C. Fuller</option>
    <option value="D. Hauser">D. Hauser</option>
    <option value="J. Perdomo">J. Perdomo</option>
  </select>
</th>

创建人
A.法德尔
A.加西亚
C.富勒
D.豪瑟
佩多莫
如何在不显示“选择”对话框中的选项的情况下将其导出

谢谢

在使用
.appendTo($(column.header())
将标题附加到标题时,您将标题的
过滤部分添加到标题中。因为您正在导出一个表(我假设如下示例所示) )您正在导出其中的所有内容,包括
。你需要把过滤器放在桌子里面吗

如果不是:
元素放在其他地方,如

如果是:尝试在导出之前删除
选择
元素,然后重新追加它。
使用
select.detach()并选择.appendTo($(column.header())导出后。通过使用
.detach()
onchange函数应保持完整


如果您能澄清为什么要将筛选器放在其中,这会很有帮助。

尝试在Datatables配置中声明列名。为了使UI更友好,我认为select需要位于列标题中,因为每列都有自己的搜索框,或者使用表的选择框是不固定的,因此,我不知道如果我将搜索框放入它们自己的div中,如何将它们正确定位在列的上方。我可以尝试删除SELECT,但我对javaScript不太在行,因此我必须深入研究按钮是如何工作的,才能找到答案。谢谢,祝你好运!如果您可以发布任何指导实际导出的代码,如果您遇到更多麻烦,我可能能够进一步提供帮助。
<th class="sorting" tabindex="0" aria-controls="table_iMZk6N3q3je7" rowspan="1" colspan="1" aria-label="Created By: activate to sort column ascending" style="width: 137px;">
  Created By
  <select>
    <option value=""></option>
    <option value="A. Fadhel">A. Fadhel</option>
    <option value="A. Garcia">A. Garcia</option>
    <option value="C. Fuller">C. Fuller</option>
    <option value="D. Hauser">D. Hauser</option>
    <option value="J. Perdomo">J. Perdomo</option>
  </select>
</th>