おぎろぐはてブロ

なんだかんだエンジニアになって10年以上

生年月日入力フォームについて考える

インターネットをやる前は、生年月日ってだいたい昭和何年って書くのが普通て、自分が西暦何年生まれなのか即答できなかったと思うのだけど、今では、西暦で書くことの方が多いように感じます。書類に署名をするときに、元号で書くように「平成 年 月」と書かれてると、「今年って平成何年?」と毎回悩むわけなのですが、生年月日については、元号が刷り込まれているので、すぐに出てきます。

生年月日を入力するにあたって、

  • 元号表記あったほうがいいのか
  • 年月日の入力はプルダウンのがいいのかどうか

が気になります。

元号がよいのか、西暦がよいのか

結論としては、そのサイトのターゲットとする年齢層に応じて「西暦」もしくは「西暦・元号併記」を選択する。
昭和54年(1979年)に制定された元号法の根拠が、その時点で日本人の87.5%が元号を使用していたからと(Wikipedia経由今日は何の日)いうことなので、30年前なら元号表記にすべきだったのでしょう。
今だと、ターゲットとする年齢層によるのかなと思います。はてなmixi元号で表示する必要があるかというと「必要無い」と思いますが、政府系とかは必要だろうし(参考: 社会保険庁 > 自分で出来る年金額簡易試算)、なんとなく年配層が高そうなヤフーとかも、あったほうがいいのかなと。
自分がどうかということより、サイトの利用者にとってどうなのかを考えないといけない典型的な例だと思います。じいちゃんばあちゃんに西暦何年生まれなのか聞いてみたら即答できるのかどうかを思い返してみれば、その必要性はなんとなく感じます。 (まぁ、パソコン使えないけどさ)
とはいえ、年配の方でも外国籍の方からすれば、?になってしまうので、「西暦・元号併記」するほうがいいかな。

憂鬱な点
  • 元号は、変わることがあるので、変わったときの対応が憂鬱。
  • 内部的には西暦で扱うことになるけど、昭和なら何年足すとか、正直めんどい
  • 国際化を考慮した場合に、わざわざ日本だけこれを用意するのは大変だと思う

年月日の入力はプルダウンのがいいのかどうか

世の中には、

  • 全てプルダウン
  • 全てテキスト入力
  • 一部プルダウン併用

のパターンがある。

この話自体が、某氏が「プルダウンになってるとうざい」と話してたところからなのだけれど、個人的にはプルダウンのがいいのかなと思っています。

プルダウンのいいこと
  • システムとして非常に扱いやすい
    • オプションに予め設定した値しか渡されないものとして実装できるので、全角が渡されたりとか考えなくていい (とはいうものの、どちらにしろ郵便番号など大杉でプルダウンにできない他の項目で避けられないこと)
  • 元号の併記が可能
    • "1988年(昭和63年)"と表示することができ、西暦と元号を両方併記できる。1989年(昭和64年・平成元年)とか間延びするので64年の方は削っていいかなかなぁとか悩ましいですが。
    • しかも、内部的に値は西暦を使える
プルダウンのよくないとこ
  • プルダウンがすごくでかくなる
    • 年は100個以上、日は31個の選択項目が積まれるので、スクロールするのがつらい
    • カードの有効期限だと、年は5年分くらいで収まるのでいいのだけれど
  • キー入力との相性が悪い
    • 先頭文字を入力することで、項目の頭出しができるけど、同じ頭文字が大量にある時点で
    • キー入力してる時点で、りてらしーが高い人だと思うで、無視しても、ドロップレートには影響が無い気もします

結論

むずい。

JavaScriptで西暦のフォームを元号プルダウン付きに書き換えて、フォームの送信時に西暦に変換して送信するとか作ってみたけれど、全部プルダウンにして元号を併記するというのが自分はいいと思いました。