Viewの表示を動的に変更したい場合、js.erb
で下のコードのように書いたりしますが、単に表示を変えるのではなく繰り返し文の中で条件分岐を動的に変えたい時の書き方を教えてください。
ajax $.ajax({ # 中略 data: {change: change}, # dataを送る }); controller @change = params[:change] # ajax:dataを受け取る html.erb <div id="change"></div> js.erb $("#change").html("<%= escape_javascript(@change) %>"); # これで動的に反映する
こんな感じだと思います。
この@change
をテーブル内繰り返し文の条件分岐に利用して動的に変更し表示するにはどうすればよいかわからない。
erb
1html.erb 2<table class="table"> 3 <tr class="thread"> 4 <th>判定</th> 5 <th>備考</th> 6 </tr> 7 <tbody> 8 <% @indices.each do |index| %> 9 <% if index.name == @change %> <%#ここで動的に条件分岐して判定しテーブルとして表示される %> 10 <tr> 11 <td data-label="判定"><%= index.judge %> 12 <td data-label="備考"><%= index.remark %> 13 </tr> 14 <% end %> 15 <% end %> 16</table>
参考にしたサイトでは表示を動的に変更するサンプルばかりなので<% if ~ %>
の非表示記法にどう対応するかは
書かれていなくて困りました。
なにかヒントになる助言を頂けると幸いです。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。