javascript - dataTables:删除除一个选择输入外的所有输入

标签 javascript jquery datatable datatables

你好,

以下多过滤器选择数据表适合我的项目。

https://datatables.net/examples/api/multi_filter_select.html

但是,我想删除除了一个选择输入(在表格底部)之外的所有选择输入,在上面的页面中说“办公室”选择输入,而不是空白应该显示默认标题,如“选择办公室”。

由于我对 dataTables 和 JS 很陌生,所以不太了解如何使用 dataTAbles API 来自定义它,所以任何伙伴都可以帮助我。

谢谢

最佳答案

你只需要稍微修改给定的代码。 与其对每一列进行 foreaching,不如对一列进行这样的操作:

/*this.api().columns().every( function () {
  var column = this;
} )*/
var column = this.api().column(2);

删除空白并显示类似“选择办公室”的内容。您需要将文本放在选项的结束标签和开始标签之间

var select = $('<select><option value="">YOUR TEXT HERE</option></select>')

这里是完整的代码和一个jsfiddle

$(document).ready(function() {
  $('#example').DataTable({
    initComplete: function() {
      var column = this.api().column(2);
      var select = $('<select><option value="">Choose Office</option></select>')
        .appendTo($(column.footer()).empty())
        .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, text: d}));
      });
    }
  });
});

编辑: 我也很自由并更换了'<option value="'+d+'">'+d+'</option>'$('<option>', {value: d, text: d})修复xss 漏洞并允许值为 " .

关于javascript - dataTables:删除除一个选择输入外的所有输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38248280/

相关文章:

javascript - 如何将 HTML5 Canvas 缩放到包装它的容器的大小?

javascript - 当我的动画完成时,transitionend 事件不会触发

javascript - jQuery 创建元素触发 onclick 事件

javascript - 当更改文本框中的值时,通过 jQuery 计算每行的总和

javascript - IE - JQuery 在 $.each 循环中将子节点附加到 XML

c# - 如何在 WPF 中显示表格

javascript - 如何将文本转换为有用数据的数组?

javascript - 点击表单外部的按钮以调用表单中“提交”按钮上的“提交”

c# - 性能 - 数据库查询和数据表查询

css - 将类似的宽度设置为 Bootstrap 数据表中的列