Railsアプリケーションで「作成」メソッドが正常に完了した後にいくつかの機能を実行するajaxフォームの作成に取り組んでいます。単語の定義を検索して表示し、ユーザーが目的の定義を保存したら画面から削除することを中心に展開します。私が抱えている問題は、success.js.erb から関数 rollUp と revertButtons (words.js に格納されている) にアクセスすることです。関数をapplication.jsに入れてみましたが、それでも機能しません。現在、これらの関数がファイルに含まれている場合、success.js.erb はまったく実行されていません...何かアイデアはありますか?
アクションの作成:
if @word.save!
params['word_definition'].each do |definition|
if @word.definitions.create(text: definition)
numDefs += 1
end
end
respond_to do |format|
if numDefs > 0
format.js { render action: "success" }
end
end
else
format.js { render action: "failure" }
end
言葉.js:
function submitForm(){
if(isSubmittable()){
$('#findWord form').serialize();
$('#findWord form').submit();
}
}
// other functions, like revertButtons() and rollUp() are stored here too
success.js.erb:
revertButtons();
rollUp();
$('<div />', { class: "alert alert-success",
text: "The word has been saved",
}).wrap('<div class="single_error" />').parent().appendTo("#fieldAndErrorsContainer");