AJAX 経由でエラーをレンダリングするフォームがあります。フォームはリモート リクエストを適切に送信しており、サーバーは JavaScript を返しています。
(function() {
$("#main").fadeIn(". . .");
}).call(this);
残念ながら、ブラウザで実際にレンダリングされるものは何もありません。最初は js コードにエラーがあるに違いないと思っていましたが、このコードをコピーして Firebug コンソールに貼り付けると、新しいコンテンツが適切にフェード インされます。そもそもブラウザがコードを実行していないことが問題のようです。この問題の原因は何ですか?
参考までに、私のフォームマークアップは次のとおりです。
= simple_form_for @user, html: {multipart: true}, remote: true do |f|
. . .
.btn.btn--positive = f.submit
コントローラーのアクションは次のとおりです。
def update
if @user.update(user_params)
redirect_to @user, notice: t('shared.notices.item_was_successfully_updated', item: @user.name)
else
render layout: 'transition.js.coffee', action: 'edit'
end
end
更新が検証されず、Rails が行を実行すると、エラーが発生しますrender layout: 'transition.js.coffee', action: 'edit'
。