ajax呼び出しの後にjavascriptをロードすることに関するいくつかの質問があります。JavascriptとAjaxコール
Rubyをレールに使用していて、別のページをajax呼び出しでロードしています(これは、ページをリロードして再生を続けるオーディオプレーヤーがあるためです)。
問題は、私がajaxでページを変更すると、javascriptが新しいページでリロード(または動作)しないということです。
たとえば、私は、JavaScriptを使って幅に基づいてグリッドイメージの高さを設定するグリッドシステムを持っています。スクリプトは、ページをリロードしないか、htmlファイルの一番下にあるスクリプトタグにスクリプトを置かない限り動作しません。
JavaScriptをリロードする方法はありますか?私はlocation.reload()を試みましたが、ページを更新して目的全体を破棄します。ありがとうございました!ここで
は一例です:ページに
<%= link_to song, remote: true do %><%= song.title %><% end %>
を表示
def show
respond_to do |format|
format.js
format.html
end
end
リンク
$('#results').html("<%= escape_javascript(render partial: 'songs/showcard', locals: { song: @song }) %>");
songs_controller
show.js.erbは、ここで私はcardSize機能です私はファイルと呼ばれるcardSize.js UJSファイルで
$(document).ready(function cardSize() {
var cardWidth = $('.card-image').width();
$('.card-image').css({
'height': cardWidth + 'px'
});
});
恐ろしいd_ethier。私はそれを考えていたはずです。それを指摘していただきありがとうございます!短縮されたコードに感謝します。私のファイルは今よりきれいに見えます! –