LoginSignup
0
1

More than 5 years have passed since last update.

【Rails】セレクトタグの選択肢は確認できるが、選択できないようにする。

Last updated at Posted at 2018-11-30

select_tag

ドキュメント
選択ボックスを生成

options_for_select

ドキュメント
配列・ハッシュから選択肢を生成する

今回作成したいHTML

<select name="select" id="select">
  <option selected="selected" disabled="disabled" value="blank">選択 ▼</option>
  <option disabled="disabled" value="value1">key1</option>
  <option disabled="disabled" value="value2">key2</option>
</select>

スクリーンショット 2018-11-30 16.40.51.png⇦選択ボックスがあって
スクリーンショット 2018-11-30 16.40.58.png⇦選択肢は見れるけど選択はできない
別に全部選択できないようにする必要がないって場合でも
ちょっと手を加えれば一部だけ選択ができないとかでもできる。

slimで書く

erbでもいいんだけど最近slimで書く機会が多くてね...

- choices = [['選択 ▼','blank'],['key1','value1'],['key2','value2']]
= select_tag :select,
  options_for_select(choices, selected: 'blank', disabled: choices.map(&:last))

ドキュメントには:selectedが指定できるのは書いてあるけど
:disabledが指定できるのは書いてない。
disabled="disabled"にしたい項目のvalueを配列で指定すると
その項目は選択することができなくなる。

ちなみに

- choices = [['選択 ▼','blank'],['key1','value1'],['key2','value2']]
= select_tag :select,
  options_for_select(choices, selected: 'blank'),
  disabled: true

とすると
スクリーンショット 2018-11-30 16.49.53.png
セレクトボックスそのものが無効になり、選択肢を確認することすら不可能になる。
(厳密には開発者ツール使えば見れるけど)

終わり。

0
1
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
1