LoginSignup
0
0

More than 1 year has passed since last update.

【Rails】テーブル内の特定の文字列を含む行の背景を変更する方法

Posted at

やりたいこと

 Railsで質問待ちアプリを作っている.ユーザが質問を登録したらテーブルに表示される.
 postテーブルにsituationカラムが入っており,この値が対応中のときにテーブルの背景の色を変えたい.

結論

 色々試したが,最終的には以下のコードにたどり着いた.

<% if post.situation == "対応中" %>
  <tr style="background-color: #FACAC8;">  <%# 背景をピンクにする %>
<% else %>
  <tr> 
<% end %>

試したこと

 JavaScriptの:contentを使う方法を試した.

jQueryの導入

1. jquery-railsのインストール

Gemfile
gem 'jquery-rails'
ターミナル
bunsle install

2. application.jsの編集

 //= require jqueryを追記する.このときに書く順番注意.

//= require jquery
//= require rails-ujs
//= require activestorage
//= require turbolinks
//= require_tree .

ビューファイルの変更(テーブルの色を変える)

<script type="text/javascript">
   $('td:contains("対応中")').parent("tr").css("background-color", "#FACAC8");
</script>

 この方法では,最後に追加されたデータには色付けできなかった.(最後に追加されたデータ以外は正しく色が変わった)キャッシュの削除など色々試したができなかったため,:contentを使わない方法にした.

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