【问题标题】:Insert a node based on boolean value根据布尔值插入节点
【发布时间】:2012-11-20 04:19:37
【问题描述】:

我有一个 XForm(在 XSLTForms 中),其中有一个复选框(即 xf:input,它已绑定到 xs:boolean 类型)。是否可以(在提交时)根据该复选框的值在我的模型中插入一个节点?

澄清一下,如果我有以下模型:

<xf:model>
    <xf:instance id="data">
        <data xmlns="">
            <element1/>
        </data>
    </xf:instance>
    <xf:instance id="helper">
        <data xmlns="">
            <bool1/>
        </data>
    </xf:instance>
    <xf:bind nodeset="instance('helper')/bool1" type="xs:boolean" />
</xf:model>

这是我的形式:

<xf:input ref="instance('helper')/bool1" incremental="false">
    <xf:label>Some checkbox:</xf:label>
</xf:input>

我想读取复选框的值,如果它是真的,我需要在我的data 实例中插入一个element2 节点。如果为假,则不插入任何内容。 因此,如果设置了复选框,我想以此结束:

<data xmlns="">
    <element1/>
    <element2/>
</data>

【问题讨论】:

    标签: xforms xsltforms


    【解决方案1】:

    与其在提交前插入element2,不如根据复选框关联的节点声明相关,并限制提交到相关节点。

    -阿兰

    【讨论】:

    • 感谢 Alain,这正是我所需要的。我还在学习 XForms,所以我还没有发现所有的技巧 :)
    • 嗯,这不仅仅是一个技巧 ;-) 因为它是一种声明性方法而不是算法方法!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-29
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-28
    • 2015-05-14
    相关资源
    最近更新 更多