Как условно запустить код JavaScript с помощью контроллера rails? - PullRequest
0 голосов
/ 23 июня 2018

Как я могу запустить код javascript на основе какого-либо условия в контроллере? Например, я хочу отобразить JavaScript alert, когда присутствует params[:alert]. Как я могу это сделать?

Ответы [ 3 ]

0 голосов
/ 23 июня 2018

Вы всегда можете сделать в своем контроллере:

def some_action
 if condition
  @run_javascript = true
 else
  @run_javascript = false
 end
end

, а затем по вашему мнению

<script type="text/javascript">
 <% if @run_javascript %>
  alert('Something was wrong');
 <% end %>
</script>
0 голосов
/ 23 июня 2018
#view page
<script>
    <% flash.each do |k,v| %>
        <% if k == "success" %>
            success("<%= v %>");
        <% else %>
            alert("<%= v %>")
        <% end %>
    <% end %>
</script>

Вам нужно только flash:{ alert: or success:}

#controller
 respond_to do |format|
    format.html{ redirect_back(fallback_location: '/orders', flash: { alert: "custom message" } ) }
 end
0 голосов
/ 23 июня 2018

В вашем представлении файл

<% if params[:alert] %>

<script>alert("Hello");</script>

<% end %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...