2009-11-13 152 views
1

我有一个XForm,其中某些字段可能经常留空(可选街道地址)。是否有技术来为该字段设置默认值,最好是一个空格(我遇到了奇怪的用CSS格式化问题)。 value=""的html表单方式不起作用,在XML模式中也没有设置默认值。XForms中的默认值输入

为例:<streetaddress2/>

<xforms:input ref="clientaddress/streetaddress2" model="model_inventory" > 
     <xforms:label>Street Address (Line 2)</xforms:label> 

离开这一领域的空白结果得到的XML文档中

我想

<streetaddress> </streetaddress> 

回答

1

你是说,你想设置您的实例中的所有字段的值是空白的有空间?假设你有一个静态实例,您可以添加以下模型:

<xforms:setvalue ev:event="xforms-model-construct-done" 
    xxforms:iterate="//*[empty(*) and string() = '']" ref="."> </xforms:setvalue> 

注意,这里使用了xxforms:iterate扩展Orbeon形式(documented here)。如果您正在使用其他XForms实现,您可能需要检查该实现的文档以查看它们是否提供了类似的扩展。

(这是说,我很好奇,为什么你需要有“空”领域的空间。莫非是一个问题的征兆别的地方?)

0

设置默认的最简单方法在XForms中值是实例:

<xforms:instance> 
    <data> 
    <clientaddress> 
     <streetaddress> </streetaddress> 
    </clientaddress> 
    </data> 
</xforms:instance> 

你说,你尝试过的模式来设置默认值,但我不知道,它的作品如你预期。架构可用于验证,但我不知道任何XForms引擎是否使用架构的默认值。