0

我试图告诉 Orbeon 将 2 个字段组合在一起,以便捕获 2 个值,如:磅和盎司。

<xs:complexType name="rpm-weight">
    <xs:sequence>
        <xs:element name="weight-lbs" type="rpm-weight-lbs" minOccurs="1" maxOccurs="1"/>
        <xs:element name="weight-oz" type="rpm-weight-oz"   minOccurs="1" maxOccurs="1">
    </xs:sequence>
</xs:complexType>

我如何告诉 Orbeon 在选择 rpm-weight 时会生成 2 个文本框?

4

1 回答 1

1

创建 XBL 组件是可行的方法,如果这是您第一次这样做,这可能会很棘手。几点建议:

  • 因此,您可以在 Form Builder 中使用它,您的组件需要绑定到一个元素(使用ref)。元素的名称将是表单作者为表单生成器中的控件提供的名称(假设他们没有使用自定义实例)。
  • Form Builder 将在控件的实例中创建一个元素。由于您的控件需要有子元素,因此您需要告诉 Form Builder 那些。您可以使用fb:metadata/fb:template/fb:instance. 例如,看看这是如何在autocomplete.xbl. 例如,元数据的那部分将如下所示。

XBL 的表单生成器元数据示例:

<fb:metadata xmlns:fb="http://orbeon.org/oxf/xml/form-builder">
    ...
    <fb:templates>
        <fb:instance>
            <weight-lbs/>
            <weight-oz/>
        </fb:instance>
        <fb:view>
            ...
       </fb:view>
    </fb:templates>
</fb:metadata>
于 2012-06-06T01:46:14.017 回答