Rails newbe here. サーバーへの ajax クエリを実行するリンクがあります。
<%= link_to g.name, g, :class => 'link link-to-gallery', :remote => true %>
部分からデータをロードする JS ビュー:
$('#content').html('<%= escape_javascript render("layouts/galleries/show") %>');
そして、モデルで動作し、html と js をレンダリングするコントローラー:
クラス GalleriesController < ApplicationController
デフショー
@galleries = Gallery.all
@gallery_to_show = Gallery.find(params[:id])
Respond_to do |フォーマット|
format.html
format.js
終わり
終わり
終わり
Ajax は正常に動作しますが、ajax が完了した後にコールバックを配置しようとしています。
jQuery(関数() {
$(".link-to-gallery").bind("ajax:complete", function() {
アラート(1)
});
});
アラートは表示されません。私は何を間違っていますか?Rails のバージョンは 3.2.11、Ruby のバージョンは 1.9.3p194 です。
更新: このコードを使用しているとき
jQuery(関数() {
$(".link-to-gallery")
.on("ajax:before", 関数 () {
alert("前")
}))
.on("ajax:完了", function() {
alert("完了")
});
});
「前」のアラートが発生しますが、一度だけです。もう一度押しても何も得られません。しかし、ajax はまだ動作します。