日付範囲ピッカーの日付が変更されたときにDIVの内部を変更しようとしています。私はDate Range PickerとAccordion Tableを使ってこのページを助けています。アコーディオンテーブル+日付範囲ピッカー+ AJAX
DIVには、日付範囲選択ツールを使用して別の日付範囲を選択したときに異なる日付範囲のデータに変更されるアコーディオン表が含まれています。テーブルが再生成されると、アコーディオンセクションのように開いたり閉じたりしなくなります。
これは、テーブルと日付範囲ピッカーを生成し、私のページのHTML/PHPである:私はAJAX呼び出しと一緒に日付範囲ピッカーのためのすべての情報を持っているページの下部に
<!-- Date selector -->
<div id="reportrange">
<i class="glyphicon glyphicon-calendar fa fa-calendar"></i>
<span></span>
</div>
<!-- Our table -->
<div id="replace">
<?php
$yesterday = date("m/d/Y", strtotime('-31 hours'));
table($yesterday, $yesterday);
?>
</div>
table()関数を呼び出す。ここではAJAX呼び出しがある:
// AJAX call to our php function which creates the table
$.ajax({
url: 'php/jstranslator.php',
type: 'post',
data: {'action': 'table', 'start': begin, 'stop': stop},
success:function(result){
document.getElementById("replace").innerHTML = result;
},
error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}
});
私は、データが再生されたら近い/なぜ私のテーブルには、もはやオープンします考え出すん助けが必要。あなたがページを調べて内容を見ると、あなたはそれを見ることができないすべてのデータでテーブルがいっぱいであることがわかります!
ああ、アコーデオンテーブルライブラリは、そのイベントを元のテーブルに結びつけて、それをajaxリターンテーブルに置き換えます。私はアコーデオンテーブルのメソッドを知っていませんが、新しいテーブルに「イベントを再適用する」ために何かがあるかもしれません。 – IncredibleHat
サイドノート: 'document.getElementById(" replace ")を実行する代わりに、innerHTML = result;' jquery style: '$("#replace ").html(result);' ...しかしそれは解決しません元のアコーデオンイベントが置き換えられて失われてしまう問題。 – IncredibleHat
あなたは実際に私の問題を解決するのを手伝ってくれてありがとう!私はテーブルを再初期化することについて考えなかった。私はちょうど成功の終わりにテーブルを開いて閉じるためのスクリプトを追加しました:ステートメント! – TurtleBo