Я использую DataTables и YADCF для фильтрации таблицы.Невозможно уничтожить(), используя плагин «Еще один DataTables Column Filter»
В какой-то момент мне нужно временно отменить оба плагина из моей таблицы, а затем связать их снова. Если я не использую YADCF, я могу уничтожить данные и инициализировать его снова. Однако, когда я использую YADCF, фильтрующая часть таблицы не уничтожается.
HTML:
<a href="#" id="create">Create</a> | <a href="#" id="destroy"> Destroy</a>
<table id="mytable" class="results table table-striped">
<thead>
<tr>
<th>Head 1</th>
<th>Head 2</th>
<th>Head 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>12</td>
<td>13</td>
<td>14</td>
</tr>
<tr>
<td>12</td>
<td>13</td>
<td>14</td>
</tr>
<tr>
<td>152</td>
<td>13</td>
<td>154</td>
</tr>
<tr>
<td>1762</td>
<td>1873</td>
<td>1874</td>
</tr>
<tr>
<td>124</td>
<td>1343</td>
<td>1124</td>
</tr>
</tbody>
</table>
JS без YADCF JSFIDDLE:
var oTable = $('table');
$('#create').click(function (e) {
e.preventDefault();
oTable.dataTable({
"bJQueryUI": true,
"bStateSave": true,
"bPaginate": false,
"bAutoWidth": false,
});
});
$('#destroy').click(function (e) {
e.preventDefault();
oTable.fnDestroy();
oTable.attr('class', '');
});
JS с YADCF JSFIDDLE:
var oTable = $('table');
$('#create').click(function (e) {
e.preventDefault();
oTable.dataTable({
"bJQueryUI": true,
"bStateSave": true,
"bPaginate": false,
"bAutoWidth": false,
});
// Add YADCF
oTable.yadcf([{
column_number: 1,
filter_type: 'range_number',
ignore_char: 'm'
}, {
column_number: 2,
filter_type: 'text',
filter_default_label: ' '
},
]);
});
$('#destroy').click(function (e) {
e.preventDefault();
oTable.fnDestroy();
oTable.attr('class', '');
});
Может кто-нибудь подскажите, как уничтожить фильтр YADCF?
не будет работать. 'Destroy()' используется, когда вы используете 'DataTable' - обратите внимание на капитал' D'. – RRikesh
Стоит попробовать - подумал, что вы использовали оконечный рефрен (fn) для новых datatables. – Webezine
Есть 'JSFiddle', доступные для вас, чтобы играть. – RRikesh