1

如果您使用 jQueryUI 创建单选框/复选框输入的按钮集,则必须使用显式标签。这意味着您必须将 a labelby 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 回答