1

jQueryUI を使用してラジオ/チェックボックス入力のボタンセットを作成する場合は、明示的なラベルを使用する必要があります。labelつまり、を ID で に関連付ける必要がありますinput

同じページで複数の同一のボタンセットを使用する場合、ID はドキュメント内で一意でなければならないため、すべてのボタンセットに同じコードを使用することはできません。

ほとんどのブラウザーは一意でない ID を受け入れますが、Web 標準を破ることを強いられることは避けたいと思います。また、ブラウザーが今後も一意でない ID をサポートし続けるという保証はありません。

あらゆる状況で一意の ID を生成できますが、コードが複雑になり、ID が実際に一意であることを保証するという問題が追加されます。

複数の同一のボタンセットを処理する最善の方法は何ですか?

これは問題を示しています: http://jsfiddle.net/C3NyV/1/

私の特定の状況では、ボタンセットは Widget ファクトリを使用して作成されたプラグインによって生成されます。これがこの特定の問題の解決に役立つかどうかはわかりません。

4

1 に答える 1

1

jQuery UI に関係なく、アクセシビリティ上の理由から、すべての入力のid属性を属性を持つラベルに一致させる必要があります。forスクリーン リーダーが入力フィールドに遭遇すると、この基準を使用して一致するラベルを探します。

一意の識別子を生成する代わりに、よりセマンティックなものを使用して異なるセットを区別することをお勧めします。作業は増えるかもしれませんが、より標準的で、アクセスしやすく、保守しやすいコードになります。

于 2012-05-14T01:44:22.730 に答える