将列搜索应用于当前的jQuery DataTable

我有一个正常运行的jQuery DataTable:

var $dataTable = $('#example1').DataTable({ "ajax": 'api/tableSearch.php', "iDisplayLength": 25, "order": [[ 6, "desc" ]], "scrollY": 600, "scrollX": true, "bDestroy": true, "columnDefs": [{ "targets": 0, "render": function (data, type, full, meta){ return 'EditDel': } }] }); 

如上所述,上面的代码相应地工作…搜索filter工作,排序工作,一切正常。

我想要做的是在此数据表中添加列搜索,如下所示:
https://www.datatables.net/release-datatables/examples/api/multi_filter_select.html

我试图将上面链接中的代码添加到我当前的代码中,如下所示:

  var $dataTable = $('#example1').DataTable({ "ajax": 'api/tableSearch.php', "iDisplayLength": 25, "order": [[ 6, "desc" ]], "scrollY": 600, "scrollX": true, "bDestroy": true, "columnDefs": [{ "targets": 0, "render": function (data, type, full, meta){ return 'EditDel': } }], // begin here initComplete: function(){ this.api().columns().every(function(){ var column = this; var 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( ''+d+'' ) } ); } ); } } ); }); 

我没有收到任何错误,DataTable仍然加载,但列搜索不存在。

我使用的是jQuery-2.1.3.min,所以它应该是最新的。

有谁看到我做错了什么以及我能做些什么来纠正这个问题?

在表中添加

。 引用column.footer()的表达式期望它存在。