やりたいこと
- HTMLのチェックボックスの外観を変更したい
- 外観を変更したチェックボックスを、ASP.NET MVC 5から利用したい
問題の背景
デフォルトのチェックボックスはイケてない上に変更が面倒
HTMLフォームの中でも、チェックボックスは外観のカスタマイズに技巧的な手法を要します。
とはいえ適当にぐぐるだけでも 「CSSだけでチェックボックスをカスタマイズする方法」 の解説ページがいくつか見つかるので、外観を変えるだけならば特に問題なくできます。
ちなみに今回はこちらの記事を参考にしました。感謝!plustrick.com
外観を弄ったチェックボックスは ASP.NET MVC 5 とうまく連携できない
そこまではよかったのですが、 外観をカスタマイズしたチェックボックスを ASP.NET MVC 5 でそのまま使おうとすると、入力値がモデルにうまくバインドされず、丸一日ドはまりしました(具体的には、チェックボックスにチェックを入れても、Post 先のアクションメソッドでは入力値が常に false と見なされてしまう現象です)。
加えて、カスタマイズ版チェックボックスはデフォルトのビューヘルパーで生成できないため、一筋縄ではいきません。
まるでサウザー戦で北斗神拳が通用しないことに落胆するケンシロウのようなみじめな気持ちになりましたが、とりあえずなんとかなったのでここに書き留めておくことにします。