【问题标题】:Using Orbeon Forms, is it possible to group radio buttons into radiogroups?使用 Orbeon Forms,是否可以将单选按钮分组到单选组中?
【发布时间】:2016-09-15 15:53:57
【问题描述】:

我希望能够创建一个单选按钮列表,其中单选按钮包含在带有标题的单选组中。例如在 HTML 选择列表中使用<optgroup label=""><fieldset> <legend>...</legend> ... </fieldset>

我仍然需要能够在所有组中返回单个值,因此单独的列表不是解决方案。

例如按国家/地区分组的城市列表...

USA
  New York
  San Francisco
  Seattle
  Miami
UK
  London
  Birmingham
  Manchester
  Cardiff
  Edinburgh
France
  Paris
  Toulouse
China
  Beijing
  Shanghai
Germany
  Berlin
  Munich
  Frankfurt

您对实现这一目标有何建议?在我看来,创建自定义 XBL 是迄今为止最好的解决方案,但在查看了一些现有的精选 XBL 后,我不确定如何去做。

谢谢,

【问题讨论】:

    标签: orbeon


    【解决方案1】:

    我想您是在可访问性的背景下提出这个问题的。如果您使用普通的<xf:select1 appearance="full"><xf:label>,Orbeon Forms 会将所有单选按钮放在<span> 中,该<span> 具有:

    • role="radiogroup",例如所以屏幕阅读器知道内容是“一组单选按钮”。
    • aria-labelledby="…" 指向包含此控件标签的元素的 id,例如因此屏幕阅读器可以正确读取“控制”标签。

    【讨论】:

    • 感谢您的快速回复,@avernet。我在布局的背景下要求更多。因此,在上面的示例中,国家/地区将是与下面的控件组相关的子标题(没有单选按钮)。
    • 换一种说法,是否有可能有很多单选组都绑定到表单模型中的单个元素节点?
    • @jtb 我不确定这是否是您要问的,但是如果您有不同的复选框组,例如您的示例中的美国,英国等,并且每个组都使用其实现拥有<xf:select1>,但所有ref="…" 都指向同一个节点,那么它们将按照您的预期工作:如果首先选择了 San Francisco 无线电,并且用户选择了 London 在第二个中,然后 San Francisco 将取消选择自己。这是你要找的吗?
    • 是的,这是正确的功能,但我想在每个分组上方插入子标题(例如上面示例中的国家名称)。副标题不应有单选按钮。
    • 我找到了一个解决方案,方法是使用自己的数据模型创建一个 XBL 组件,所以实际上我循环每个子标题并为每个使用单节点的组生成一个 xf:select1 控件-绑定。
    猜你喜欢
    • 2011-04-04
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-23
    • 2012-05-19
    • 1970-01-01
    相关资源
    最近更新 更多