Javascript jquery数据表搜索显示删除的数据

Javascript jquery数据表搜索显示删除的数据,javascript,jquery,datatable,datatables,jquery-datatables,Javascript,Jquery,Datatable,Datatables,Jquery Datatables,我使用的是数据表 我的场景是基于某个事件更改表的内容 <table cellpadding="0" cellspacing="0" border="0" id="dataTable0"> <thead> <tr style="width: 100%;"> <th>Campaign Name</th> <th>Schedul

我使用的是数据表

我的场景是基于某个事件更改表的内容

<table cellpadding="0" cellspacing="0" border="0" id="dataTable0">
   <thead>
      <tr style="width: 100%;">                         
         <th>Campaign Name</th>
         <th>Schedule</th>
         <th>List</th>  
      </tr>
    </thead>
  <tbody id="CampaignTableViewBody"></tbody>
</table>
动态填充数据

$("#CampaignTableViewBody").empty();
$("#CampaignTableViewBody").append(
     '<tr>'+ 
        '<td>'+obj.name+'</td>'+
        '<td>'+obj.startTime+'</td>'+
        '<td>'+obj.listTemplateUsed+'</td>'+                            
      '</tr>');
我有一个下拉列表说选择教室: 我正在动态填写所选教室的表中的所有学生数据

假设选择了教室A,那么我将在表中显示Rahul和Jason

现在,若用户更改了教室,那个么我将使用$ActivationTableViewBody.empty从表中删除所有数据;以及迭代表中的新数据

假设选择了教室B,然后我删除表中的所有数据,然后我将在表中显示Mayur、John

但这里的问题是,当我在带有单词Rahul的datatable中的搜索框中搜索时,它会显示不应该是大小写的行,因为选择了类B,而类B没有Rahul

虽然在表中填充数据一切顺利,但我只能看到2行,即Mayur和John,唯一的问题是在数据表搜索中,这会在结果中提供不再存在的旧数据


知道如何克服它吗。

您需要“销毁”以前的数据表

$("#dataTable0").dataTable().fnDestroy(); // Destroy the previous table
$("#CampaignTableViewBody").empty(); // Empty (remove any DOM elements)


$("#CampaignTableViewBody").append( 
     '<tr>'+ 
        '<td>'+obj.name+'</td>'+
        '<td>'+obj.startTime+'</td>'+
        '<td>'+obj.listTemplateUsed+'</td>'+                            
      '</tr>'); // Append the new information 

$("#dataTable0").dataTable(settings); // Recreate the datatable 
希望这对你有用! 此处有更多Api函数:


祝实现顺利。

您没有意识到插件不仅仅是处理html。它将html和数据存储在缓存的数组中。您需要使用插件API来添加和删除data@charlietfl你说得对。我是白痴,我没有正确地阅读api,并以上述方式编写了许多代码。你能告诉我这个问题的解决办法吗?你说的解决办法是什么意思?为什么不能使用API?
$("#dataTable0").dataTable().fnDestroy(); // Destroy the previous table
$("#CampaignTableViewBody").empty(); // Empty (remove any DOM elements)


$("#CampaignTableViewBody").append( 
     '<tr>'+ 
        '<td>'+obj.name+'</td>'+
        '<td>'+obj.startTime+'</td>'+
        '<td>'+obj.listTemplateUsed+'</td>'+                            
      '</tr>'); // Append the new information 

$("#dataTable0").dataTable(settings); // Recreate the datatable