0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【エラー】loadイベントが読み込まれない問題【javascript】

Posted at

原因

loadイベントを発火させる条件が、"/◯◯/new"と一致している場合としていた為(下記参照)、
renderメソッドでnewアクションを呼び出したことにより、URLが一致しなくなりイベント発火が起きなくなってしまった。

menu.js
if (document.URL.match( "/menus/new" )) {
  window.addEventListener("load", 関数名);
}

解決方法

renderメソッドは使用せず、redirect_toを使用した。
但し、renderメソッドを使用できないとインスタンス変数に格納されているエラーメッセージを取り出すことができない。エラーメッセージを表示させる別の方法として、flashを用いた。

menus_controller.rb
flash[:notice] = "料理が選択されていません" 
redirect_to new_menu_path

ビューファイルに、格納したエラーメッセージを表示させるように記述。

new.html.erb
<%= flash[:notice] %>
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?