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 1 year has passed since last update.

【Laravel】三項演算子を使用したクラス属性の追加方法

Last updated at Posted at 2022-12-17

条件によってクラス属性を追加し複数設定したい場合あったのですが、実装につまったので備忘録にしたいと思います。

<div class="col-sm-7">
    {{ Form::select('content', ['hoge', 'hogehoge'], old('content'), ['class' => 'form-control ' . (is_null($hoge) && empty($hogehoge) ? 'form-color' : '')]) }}
</div>

解説

デフォルトのclass属性にはform-controlというクラス名が設定されている。
そこに三項演算子の結果がtrueならば、form-colorというクラス名を追加している。

三項演算子の結果は、「文字列連結」しているところがミソなのではないかと考えている。
この実装が初めは思いつかず苦労しました。。。
文字列連結は基礎中の基礎ではありますが、すぐにはこの実装が思いつきませんでした。。。

文字列連結した結果は以下の状態になる

'class' => 'form-control form-color'

また、文字列連結する際は、デフォルトのクラス名の後に半角スペースを入れる必要があります。
上記から分かるようにclassを複数設定する時には半角スペースを入れていますよね。

'form-control '
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?