radioボタンが選択されていないときに、ブラウザはFormの値を送信しない。
サーバー側で値を拾えなくて困る.
これは困るので対応するには・・・
これだと送信されない
<input type="radio" name="性別"value="女性" /> <input type="radio" name="性別"value="男性" />
ユーザーが選択し忘れたらフォームの値どころか、Nameすら送られないので困る.同じ事はチェックボックス(checkbox)にもいえる。
そこで選択項目を増やすんだけど.
かといって,始めから、女性にCheckedつけるのもなんか違うよね.未回答にチェックしておくとユーザーが選択し忘れに気づかないよね.
<input type="radio" name="性別"value="女性" /> <input type="radio" name="性別"value="男性" /> <input type="radio" name="性別"value="未回答" checked />
display:none 使えば良いんですよ
hidden より断然オススメなのです
<input type="radio" name="性別"value="女性" /> <input type="radio" name="性別"value="男性" /> <input type="radio" name="性別"value="" checked="checked" style="display:none;" />
このハックのミソはスタイルを使うって事.これでデフォルト値が必ずサーバーに送られます.
しかもValue=""(←空)なのでチェック出来ます.
しかもユーザーの見た目には影響しません.素敵!!!