XForms:设置相关从XML中删除标记

时间:2010-08-18 22:13:15

标签: xforms

我有2个选项“上传文件”,“添加网址”。如果用户选择上传文件,我的表单将显示文件选择器。如果用户选择“添加URL”,则表单将隐藏文件选择器,而是显示文本框。我使用相关性做了这个。

<xforms:bind nodeset="./document" relevant="instance('test')/uploadMethod='Upload File'"/>
<xforms:bind nodeset="./documentURL" relevant="instance('test')/uploadMethod='Add URL'" />

文件选择器会将文件信息添加到文档标签。文本框数据将保存在documentURL标记中。

用户选择上传文件并上传文件并保存XML。在保存的XML中,我不再看到标记。我有一个用例必须能够编辑此XML的用例,他可以选择添加URL。问题是这个。由于保存的XML不包含标记,因此文本框不会显示在表单上。

有人可以帮忙吗?我需要能够让用户根据他在下拉列表中选择的内容在编辑模式下查看文件选择器或文本框。

1 个答案:

答案 0 :(得分:1)

如果您在实例中有元素,但在提交实例后它们不再存在,则可能是因为您有“相关性修剪”,这将从提交的XML中删除所有不相关的节点。您可以通过删除relevant="true"元素上的<xforms:submission>属性来解决此问题。