日付選択ボックスを生成
説明
モデルと関連のない日付の入力に特化した選択ボックスを生成
使い方
date_select(オブジェクト名, メソッド名 [, オプション or HTML属性 or イベント属性])
f.object
f.date_select(メソッド名 [, オプション or HTML属性 or イベント属性])
オプション
オプション | 説明 |
---|---|
:use_month_numbers | 月を数字で表示 |
:use_two_digit_numbers | 月と日を2桁表示 |
:use_short_month | 月名を省略形で表示 |
:add_month_numbers | 数値 + 月名表示 |
:use_month_names | 月名をカスタマイズ |
:month_format_string | フォーマット |
:date_separator | 年月日の区切り文字 |
:time_separator | 時間の区切り文字 |
:start_year | 開始年 |
:end_year | 終了年 |
:discard_day | 日の選択ボックスを非表示 |
:discard_month | 月の選択ボックスを非表示 |
:discard_year | 年の選択ボックスを非表示 |
:order | 並び順を指定 |
:include_blank | 空を含めて表示 |
:default | デフォルトの日付を設定 |
:selected | 優先した設定 |
:disabled | 無効化 |
:prompt | 選択値の一番上を指定 |
:with_css_classes | スタイルを変更するタグの設定 |
:use_hidden | 非表示のタグのみ生成 |
HTML属性
HTML属性 | 説明 |
---|---|
:discard_type | 名前の型を破棄 |
:prefix | 名前の接頭辞を設定 |
:size | フォームの幅 |
:maxlength | 入力フィールドに入力可能な最大文字数 |
:accept | フォームで受付可能なMIMEタイプ |
:readonly | フォームの内容変更禁止 |
:tabindex | Tabキーによる入力欄の移動順 |
:accesskey | フォームに移動するショートカットキー |
:id | 要素固有の識別子 |
:class | 要素を分類するクラス名 |
:title | 要素の補足情報 |
:style | 要素の補足情報 |
:dir | 表記方向 |
:lang | 基本言語 |
イベント属性
イベント属性 | 説明 |
---|---|
:onclick | クリックされた時 |
:ondblclick | ダブルクリックされた時 |
:onmousedown | マウスのボタンが押し下げられた時 |
:onmouseup | マウスのボタンが離された時 |
:onmouseover | カーソルが重なった時 |
:onmousemove | カーソルが移動した時 |
:onmouseout | カーソルが離れた時 |
:onkeypress | キーが押されて離された時 |
:onkeydown | キーが押し下げられた時 |
:onkeyup | キーが離された時 |
:onfocus | フォーカスされた時 |
:onblur | フォーカスを失った時 |
:onchange | フォーカスを失う際に値が変化していた時 |
例
datetime_select_tag
日付の入力に特化した選択ボックスを生成
datetime_select_tag :page, :updated_at
# <select id="page_updated_at_1i" name="page[updated_at(1i)]">
# <option value="2006">2006</option>
--- 省略 ---
# </select>
月を数字で表示
datetime_select_tag :page, :updated_at, use_month_numbers: true
# <select id="page_updated_at_1i" name="page[updated_at(1i)]">
# <option value="2006">2006</option>
--- 省略 ---
# </select>
月名を省略形で表示
datetime_select_tag :page, :updated_at, use_short_month: true
# <select id="page_updated_at_1i" name="page[updated_at(1i)]">
# <option value="2006">2006</option>
--- 省略 ---
# </select>
数値 + 月名表示
datetime_select_tag :page, :updated_at, add_month_numbers: true
# <select id="page_updated_at_1i" name="page[updated_at(1i)]">
# <option value="2006">2006</option>
--- 省略 ---
# </select>
年の範囲を2011から2013で10分間隔
datetime_select_tag :page, :updated_at, start_year: 2012, end_year: 2013, minute_step: 10
# <select id="page_updated_at_1i" name="page[updated_at(1i)]">
# <select id="page_updated_at_1i" name="page[updated_at(1i)]">
# <option value="2010">2010</option>
--- 省略 ---
# </select>
f.date_select
日付の入力に特化した選択ボックスを生成
<%= form_for @person do |f| %>
<%= f.date_select :birth_date %>
<%= f.submit %>
<% end %>