3

毎日、選択できるラジオボタンがあるカレンダーを作成しています。ユーザーが 1 日だけ選択できるようにしたい。私が抱えている問題は、カレンダーをテーブルとして作成したため、それぞれ<td>に次のものが含まれていることです。

<td>
  <form>
    Mon 18
    <input type="radio" name="day" value="mon18" />
  </form>
</td>

したがって、すべてのラジオ ボタンが 1 つのフォーム要素に含まれているわけではないため、選択を相互に排他的にする通常の動作は発生しません。すべてのマークアップの周りに 1 つのフォーム要素を作成すると、その中に表が含まれますが、これは意味的に正しいでしょうか?

私の問題に対する意味的に正しい解決策はありますか? JavaScriptとサーバー側の検証でそれを行うことができると思います。

4

1 に答える 1

6

テーブルを囲むフォームを使用することは意味的に完全に正しいことです。これは、相互に排他的な選択を使用してラジオボタン ベースのカレンダーを作成する唯一の賢明な方法です。

次のコードは検証します。

<form>
    <table>
        <tr>
            <td><input type="radio" name="day" value="1"></td>
            <td><input type="radio" name="day" value="2"></td>
            ...
        </tr>
    </table>
</form>
于 2012-11-08T09:36:22.307 に答える