我使用由Orbeon表單生成器創建的部分模板,該模板包含在另一個也由Form Builder創建的表單中。在這種形式下,我們使剖面模板不可見,它從窗體實例中消失。爲什麼缺少不相關的部分模板的元素?
是否有可能使部分模板不可見而不會在表單實例中丟失它?
我使用由Orbeon表單生成器創建的部分模板,該模板包含在另一個也由Form Builder創建的表單中。在這種形式下,我們使剖面模板不可見,它從窗體實例中消失。爲什麼缺少不相關的部分模板的元素?
是否有可能使部分模板不可見而不會在表單實例中丟失它?
對於每個部分模板,表單生成器都會生成一個XBL組件,該組件包裝該部分中的字段。在使用與節模板相對應的XBL的表單中,在該實例的XML中,整個節只有一個元素,並且XBL組件綁定到該元素。 XBL組件「知道」節中字段的XML是什麼,並且在運行時,它變得相關時,它將它們插入該節的元素中。因此,如果該部分永不相關,那麼這些字段將從實例中丟失。
此行爲與常規節發生的不一致,但它不應該導致任何特定的問題Form Runner。比方說,如果你保存沒有這些字段的數據,稍後再編輯它,並且該部分變得相關,那麼XBL組件將把這些元素添加到實例中。出於這個原因,我們創建了這個issue。
我不上表單生成器的工作,但你可以使用
<xforms:group>
或relevant
條件讓看不見的部分/場。如果您使用<xforms:group>
那麼該部分/字段將不會從模型實例中刪除。
如果使用相關條件,那麼當相關條件爲假時,該部分將從模型實例中刪除。
我確認你說過關於使用相關內容。所以我嘗試從部分模板中的組件xforms:組像這樣
這聽起來像是一個錯誤,我會盡力重現和調查明天,並在此發佈後續行動。 – avernet 2012-02-22 05:57:47
預先感謝您 – trin86 2012-02-22 07:29:12