私はテーブルにDataTableを追加しました。私はPHPとSQLを使用してAJAX経由でデータを取得しています。非常に最初の負荷では、最初の検索を実行した後、すべてが問題なく、すべてが意図どおりに機能します。しかし、検索に使用されたすべてのコードがもう一度実行されている間に、もう一度検索すると、DataTableの機能が停止しているようです。JQuery AJAX DataTable読み込み中の標準関数
DataTableファイルの重大な部分にアラートを追加し、最初の検索後にファイルに戻さないようにしました。
私は、データの内容全体が検索後に変更されたことを見て、DataTableを "再初期化"する必要があるかもしれません。
オンラインで探していた時間が長くなりました。多くの提案が破棄され、消去されていますが、何も動作していないようです。
$.ajax({
type:'POST',
url:'/ITSMIS/data/asset/search.php',
data:HardwareAsset,
dataType: "html",
success:function(data){
LoadDataTableHeaders();
var NotSearched = document.getElementById("no-search-default");
var TableContainer = document.getElementById("data-table-container");
var NoSearchResults = document.getElementById("no-search-results");
if(NotSearched.style.display !== 'none'){
$(NotSearched).hide();
}
if(data){
if(TableContainer.style.display == 'none'){
$(TableContainer).show();
}
$(NoSearchResults).hide();
$('#data-table-results').html(data);
$("input:checkbox:not(:checked)").each(function() {
var DataTableColumn = "table ." + $(this).attr("name");
$(DataTableColumn).remove();
});
if (! $.fn.DataTable.isDataTable('#data-table')) {
$('#data-table').DataTable();
}
else{
}
}
else{
if(NoSearchResults.style.display == 'none'){
$(TableContainer).hide();
$(NoSearchResults).show();
}
}
}
})
:ここ
は、あなたが見ることができるように私はすべての仕事をいけないなどの検索、それは最初の検索後に異なるが、並べ替え、ページネーションとして、この問題を解決する方法がわからない何かをする設定されている、私のコードです
raw htmlテーブルにデータをダンプする場合は、すべての行を無効にして再描画する必要があります。 DataTableは、基礎となるhtmlを変更していることを知らない – Bindrid
いつもテーブル全体を破壊して再構築することができる – Bindrid