フォームコンポーネント
ここでは、データ登録などで使用することが多いフォームの機能についてご紹介します。ひな形で生成されるアカウント登録ページを例に説明します。
まずは生成されるHTMLを見てみましょう。
<!-- フォーム部分 --> <form class="form-horizontal" role="form" action="/Account/Register" method="post" novalidate="novalidate"> <input name="__RequestVerificationToken" type="hidden" value="prXfel..."> <h4>新しいアカウントを作成します。</h4> <hr> <div class="validation-summary-valid" data-valmsg-summary="true"> <ul> <li style="display: none;"></li> </ul> </div> <!-- (1)ユーザー名 --> <div class="form-group"> <label class="col-md-2 control-label" for="UserName">ユーザー名</label> <div class="col-md-10"> <input name="UserName" class="form-control valid" id="UserName" type="text" value="" data-val-required="ユーザー名 フィールドが必要です。" data-val="true"> </div> </div> <!-- (2)パスワード --> <div class="form-group"> <label class="col-md-2 control-label" for="Password">パスワード</label> <div class="col-md-10"> <input name="Password" class="form-control input-validation-error" id="Password" type="password" data-val-required="パスワード フィールドが必要です。" data-val="true" data-val-length-min="6" data-val-length-max="100" data-val-length="パスワード の長さは、6 文字以上である必要があります。"> </div> </div> <!-- (3)パスワードの確認 --> <div class="form-group"> <label class="col-md-2 control-label" for="ConfirmPassword">パスワードの確認入力</label> <div class="col-md-10"> <input name="ConfirmPassword" class="form-control input-validation-error" id="ConfirmPassword" type="password" data-val="true" data-val-equalto-other="*.Password" data-val-equalto="'パスワードの確認入力' と 'パスワード' が一致しません。"> </div> </div> <!-- (4)登録ボタン --> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input class="btn btn-default" type="submit" value="登録"> </div> </div> </form>
Bootstrapのフォームでは、クラス名にform-groupと記載することで、ラベルとテキストボックスの見ばえを整頓できます。テキストボックスにform-controlと記載すると、入力枠が丸みを帯び、カーソルが移動した時に青色でフォーカス表示されます。
フォームでは、下表のクラス名を設定できます。
要素例 | クラス名 | 説明 |
---|---|---|
form | form-group | ラベルとテキストを整列 |
form | form-inline | 横に並べて(インライン)整列 |
form | form-horizontal | ラベルとテキストを水平に並べて整列 |
input/textarea/select | form-control | 入力コントロールの見栄え改善 |
input/textarea/select | input-xs | サイズ極小 |
input/textarea/select | input-sm | サイズ小 |
input/textarea/select | input-md | サイズ中 |
input/textarea/select | input-lg | サイズ大 |
div | has-success | 正常時 |
div | has-warning | 警告あり |
div | has-error | エラーあり |
label | control-label | 説明用ラベルを整列 |
フォームの設定項目の詳細は公式サイトの説明をご覧ください。