jQueryを使用してフィルタリングできるようにしたい項目がいくつかあります。ユーザーはフィルタ条件を選択して送信を実行し、自分のデータベースに電話をかけます。jQuery/JavaScript実行手順
function clearGrid() {
var theseDivs = $('.grid-item');
$('.grid-item').fadeOut('fast', function() {
$(theseDivs).remove();
});
}
をして、私は次の関数で私の新しいデータを追加:この呼び出しが完了すると、私はこの機能を既存のコンテナをフェードアウト
function repopulate() {
<% @stuff.each do |gb| %>
$('#grid').append('<%= escape_javascript(render "/stuff", :gb => gb) %>');
<% end %>
resizeGrid();
}
resizeGrid()関数は、いくつかの絶対配置を行いますグリッド内の他の要素に基づいています。他の要素がclearGrid()で削除される前にrepopulate()が呼び出されているようで、新しい要素の配置がオフで、古い要素がまだ存在するかのようにレンダリングされているようです。
私のrepopulate()関数が呼び出されないようにする方法はありますか?
'repopulate'はどこに呼び出されますか?そのコードはここにはないようです。また、 'theseDivs'はすでにjqueryオブジェクトです。もう一度' $ 'を呼び出さないでください。 –
なぜ 'clearGrid'の最後に 'repopulate'を呼び出すのですか? – Hoagie