railsでjsが効かないときがあります。
html
1<% if !flash[:notice].blank? %> 2 <div class="flash_notice" id="flash_notice"> 3 <p class="flash_notice_message"><%= flash[:notice] %></p> 4 </div> 5<% end %> 6<% if !flash[:warning].blank? %> 7 <div class="flash_warning" id="flash_warning"> 8 <p class="flash_warning_message"><%= flash[:warning] %></p> 9 </div> 10<% end %>
javascript
1$(function () { 2 $('#flash_notice').on('click', function (e) { 3 $('#flash_notice').remove(); 4 }); 5 $('#flash_warning').on('click', function (e) { 6 $('#flash_warning').remove(); 7 }); 8});
上記のように、通知メッセージ・警告メッセージを表示させて、そのメッセージをクリックするとメッセージが消えるようにしています。
しかし、通知メッセージは消えるのですが、警告メッセージがクリックしても消えません。
今まで動いていた処理で、違う環境を作ったら急に動かなくなりました。
特定のページでのみ発生してしまう現象です。
とても単純な処理なのにまったく意味が分からないです。
どなたか知恵をお貸しください。
追記--------------------------
javascript
1$('#flash_warning').on('click',function(e){ 2 alert('クリック'); 3 $('#flash_warning').remove(); 4});
こうすると、アラートが表示されないので、「flash_warning」がクリックされていないことになっていますが、
javascript
1$(document).on('click',function(e){ 2 alert(e.target.id); 3});
という記述を追加すると、「flash_warning」が表示されます。
一体なんなのでしょうか。意味が分からないです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/11 15:29
2019/10/11 16:12 編集
2019/10/12 21:46
2019/10/12 23:15
2019/10/13 13:24
2019/10/13 13:45
2019/10/13 17:26