select_tag

選択ボックス(select)

説明

選択ボックスを生成

selectとselect_tagの違い

  • size属性がつく
  • POSTパラメータがハッシュ形式

select

適応バージョン
  • 1.0.0
  • 1.1.0
  • 1.1.1
  • 1.1.6
  • 1.2.0
  • 1.2.6
  • 2.0.0
  • 2.0.1
  • 2.0.3
  • 2.1.0
  • 2.2.1
  • 2.3.2
  • 2.3.8
  • 3.0.0
  • 3.0.5
  • 3.0.7
  • 3.0.9
  • 3.1.0
  • 3.2.3
  • 3.2.8
  • 3.2.13
  • 4.0.0
  • 4.1.0
  • 4.2.1
使い方
select(オブジェクト名, プロパティ名, タグの情報 [, オプション])

タグの情報は、配列やハッシュ形式で指定が可能

使用できるフォームタグ
  • form_tag
オプション
オプション説明
:include_blank空のオプションを先頭に追加
:prompt指定したオプションを先頭に追加
:disabled無効にするオプション
:selected選択されたオプション
:sizeフォームの幅
:maxlength入力フィールドに入力可能な最大文字数
:tabindexTabキーによる入力欄の移動順
:accesskeyフォームに移動するショートカットキー
:id要素固有の識別子
:class要素を分類するクラス名
:title要素の補足情報
:style要素の補足情報
:dir表記方向
:lang基本言語
タグの情報を配列で指定
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]] %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
タグの情報をハッシュで指定
<%= select :page, :name, {"Railsの基礎" => "rails_base", "Rubyの基礎" => "ruby_base"} %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
タグの情報をオブジェクトで指定
# @categories = Category.all<%= select :page, :name, @categories.map{|t| [t.name, t.id]} %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
空のオプションを先頭に追加
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]],  :include_blank => true %>
# <select id="page_name" name="page[name]"><option value=""></option>
# <option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
指定したオプションを先頭に追加
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]],  :prompt => "選択してください" %>
# <select id="page_name" name="page[name]"><option value="">選択してください</option>
# <option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
選択されたオプションを指定
# @page.name = "ruby_base"
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]] %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" selected="selected">Rubyの基礎</option></select>
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]], :selected => "ruby_base" %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" selected="selected">Rubyの基礎</option></select>
無効にするオプション
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]], :disabled => "ruby_base" %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" disabled="disabled">Rubyの基礎</option></select>
ソースコード
ソースコード検索

f.select

適応バージョン
  • 1.0.0
  • 1.1.0
  • 1.1.1
  • 1.1.6
  • 1.2.0
  • 1.2.6
  • 2.0.0
  • 2.0.1
  • 2.0.3
  • 2.1.0
  • 2.2.1
  • 2.3.2
  • 2.3.8
  • 3.0.0
  • 3.0.5
  • 3.0.7
  • 3.0.9
  • 3.1.0
  • 3.2.3
  • 3.2.8
  • 3.2.13
  • 4.0.0
  • 4.1.0
  • 4.2.1
使い方
f.select(プロパティ名, タグの情報 [, オプション])
使用できるフォームタグ
  • form_for
オプション
オプション説明
:include_blank空のオプションを先頭に追加
:prompt指定したオプションを先頭に追加
:disabled無効にするオプション
:selected選択されたオプション
:sizeフォームの幅
:maxlength入力フィールドに入力可能な最大文字数
:disabledフォームの項目の利用禁止
:tabindexTabキーによる入力欄の移動順
:accesskeyフォームに移動するショートカットキー
:id要素固有の識別子
:class要素を分類するクラス名
:title要素の補足情報
:style要素の補足情報
:dir表記方向
:lang基本言語
タグの情報を配列で指定
<%= f.select :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]] %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
タグの情報をハッシュで指定
<%= f.select :name, {"Railsの基礎" => "rails_base", "Rubyの基礎" => "ruby_base"} %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
タグの情報をオブジェクトで指定
# @categories = Category.all
<%= f.select :name, @categories.map{|t| [t.name, t.id]} %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
空のオプションを先頭に追加
<%= f.select :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]],  :include_blank => true %>
# <select id="page_name" name="page[name]"><option value=""></option>
# <option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
指定したオプションを先頭に追加
<%= f.select :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]],  :prompt => "選択してください" %>
# <select id="page_name" name="page[name]"><option value="">選択してください</option>
# <option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
選択されたオプションを指定
# @page.name = "ruby_base"
<%= f.select :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]] %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" selected="selected">Rubyの基礎</option></select>
<%= f.select :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]], :selected => "ruby_base" %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" selected="selected">Rubyの基礎</option></select>
無効にするオプション
<%= f.select :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]], :disabled => "ruby_base" %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" disabled="disabled">Rubyの基礎</option></select>
ソースコード
ソースコード検索

select_tag

適応バージョン
  • 1.0.0
  • 1.1.0
  • 1.1.1
  • 1.1.6
  • 1.2.0
  • 1.2.6
  • 2.0.0
  • 2.0.1
  • 2.0.3
  • 2.1.0
  • 2.2.1
  • 2.3.2
  • 2.3.8
  • 3.0.0
  • 3.0.5
  • 3.0.7
  • 3.0.9
  • 3.1.0
  • 3.2.3
  • 3.2.8
  • 3.2.13
  • 4.0.0
  • 4.1.0
  • 4.2.1
使い方
select_tag(要素名, タグを表す文字列 [, オプション])
使用できるフォームタグ
  • form_tag
  • form_for
オプション
オプション説明
:multiple複数選択可
:disabledフォームの項目の利用禁止
:include_blank空のオプションを先頭に追加
:prompt指定したオプションを先頭に追加
:disabled無効にするオプション
:selected選択されたオプション
:sizeフォームの幅
:maxlength入力フィールドに入力可能な最大文字数
:tabindexTabキーによる入力欄の移動順
:accesskeyフォームに移動するショートカットキー
:id要素固有の識別子
:class要素を分類するクラス名
:title要素の補足情報
:style要素の補足情報
:dir表記方向
:lang基本言語
タグの情報を配列で指定
<%= select_tag 'page[name]', options_for_select([["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]]) %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
タグの情報をハッシュで指定
<%= select_tag 'page[name]', options_for_select({"Railsの基礎" => "rails_base", "Rubyの基礎" => "ruby_base"}) %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
タグの情報をオブジェクトで指定
# @categories = Category.all
<%= select_tag 'page[name]', options_from_collection_for_select(@categories, :id, :name) %>
# <select id="page_name" name="page[name]"><option value="1">Railsの基礎</option> 
# <option value="2">Rubyの基礎</option></select>
タグの情報をオブジェクトで指定(選択されたオプションを指定)
# @categories = Category.all
<%= select_tag 'page[name]', options_from_collection_for_select(@categories, :id, :name, 2) %>
# <select id="page_name" name="page[name]"><option value="1">Railsの基礎</option> 
# <option value="2", selected="selected">Rubyの基礎</option></select>
オブジェクトをグループ化
# @categories = Category.all
<%= select_tag 'page[name]', option_groups_from_collection_for_select(@categories, :pages, :name, :id, :name) %>
# <select id="page_name" name="page[name]"><optgroup label="Railsの基礎知識"><option value="1">Ruby on Railsとは</option>
# <option value="2">規約</option>
# <option value="3">ディレクトリ構造</option>
# <option value="4">アプリケーション作成の流れ</option>
# </optgroup><optgroup label="Rubyの基礎知識"><option value="5">Rubyとは</option></optgroup></select>
空のオプションを先頭に追加
<%= select_tag 'page[name]', options_for_select([["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]]),  :include_blank => true %>
# <select id="page_name" name="page[name]"><option value=""></option>
# <option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
選択されたオプションを指定
<%= select_tag 'page[name]', options_for_select([["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]], "ruby_base") %>
# <select id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base" selected="selected">Rubyの基礎</option></select>
無効にするオプション
<%= select :page, :name, [["Railsの基礎", "rails_base"], ["Rubyの基礎", "ruby_base"]], :disabled => true %>
# <select disabled="disabled" id="page_name" name="page[name]"><option value="rails_base">Railsの基礎</option> 
# <option value="ruby_base">Rubyの基礎</option></select>
ソースコード
ソースコード検索