I current имеет тип данных, который имеет кнопку для каждой записи, которая при нажатии отображает другую информацию для этой учетной записи. Когда это происходит, я вызываю fnFilter(), чтобы отфильтровать эту определенную строку, чтобы не отображались никакие другие, и пользователь знает, что отображаемая под-информация отображается для этой конкретной учетной записи. То, что я хотел бы сделать, - это когда пользователь нажимает на панель инструментов поиска, скрывает отображаемую ниже информацию, затем очищает фильтр и показывает все доступные исходные записи. Все работает отлично, за исключением того, что фильтр не очищается, поэтому показывается только первоначально выбранная строка.
Не уверен, что мне не хватает. Я пробовал все: от использования fnFilter (''), до fnDraw(), до fnReloadAjax(). Ни одна из этих (или любая комбинация) не работает!
ОБНОВЛЕНИЕ Я, похоже, изолировал проблему. Если я удалю столбец # из fnFilter (accountid, 7), использование fnFilter ('') повторно отобразит все записи. Однако мне действительно нужно отфильтровать этот конкретный столбец, поскольку он является единственным столбцом, который содержит уникальные значения для каждой записи. Есть идеи? Я попытался использовать fnFilter ('', null), но не успел.
Вот мой код:
var oTable = $('.mypbhs_accounts').dataTable({
"bProcessing": true,
"sAjaxSource": 'sql/mypbhs_accounts.php',
"aaSorting": [[1, "asc" ]],
"bJQueryUI": true,
"sPaginationType": "full_numbers",
//"bStateSave": true, //Use a cookie to save current display of items
"aoColumns": [
{"asSorting": [ ], "sClass":"center"},
null,
null,
null,
null,
null,
null,
{ "bSearchable": true, "bVisible": false },
{ "bSearchable": true, "bVisible": false }
],
"bScrollCollapse": true,
"sScrollX": "100%",
"fnInitComplete": function() {
oTable.fnAdjustColumnSizing();
}
});
/*** CLEAR CURRENT ACCOUNT INFO ***/
$(document).on('click','.mypbhs_content .dataTables_filter',function(){ //THIS IS CALLED WHEN USER CLICKS INTO THE SEARCH BAR
$('.mypbhs_content .dataTables_filter :input').val(''); //CLEAR CURRENT VALUE IN THE SEARCH BAR
oTable.fnFilter('');
//oTable.fnDraw();
//oTable.fnReloadAjax();
$('.mypbhs_truform_info').empty(); //REMOVE SUB-INFORMATION SO IT DOESNT GET ASSOCIATED WITH WRONG ACCOUNT
$('.control_bar').children('ul.mypbhs_account_controls').empty();
});