使用ui时的表格范围应该是什么:include?

时间:2011-07-27 17:34:01

标签: jsf richfaces

在使用ui:include包含多个子页面的情况下h:form标记应该在哪里?

表单应该在父目录中(A.xhtml和B.xhtml)?

A.xhtml摘录

<h:form>
    <ui:include src="B.xhtml" />
    <ui:include src="other.xhtml" />
</h:form>

B.xhtml exerpt

<ui:composition>
    tag contents here
</ui:composition>

表格应该在每个孩子中(C.xhtml和D.xhtml)?

C.xhtml摘录

<ui:include src="D.xhtml" />
<ui:include src="other.xhtml" />

D.xhtml摘录

<ui:composition>
    <h:form>
    </h:form>
</ui:composition>

如果您可以详细说明如何使用Richfaces形式的变体以及在第一个示例中如何使用区域来隔离每个子文件,那么可以使用互联网点。

另外,嵌套是否有可能?这就像让A.xhtml使用D.xhtml。

1 个答案:

答案 0 :(得分:3)

首先,你无法嵌套表格。否则,它在很大程度上取决于您的页面结构,逻辑和操作按钮/链接放置。

当触发操作时,它将向服务器提交其所包含的表单内容。因此,当表单内容对应于某些有意义的一起发送的业务实体时,这是很好的。一种极端的方法是为整个页面创建单个表单。它将在每次用户交互时提交所有输入。在某些情况下它可能有意义,但如果您的页面包含几个逻辑上不同的区域,我宁愿将它们分成不同的形式。

在使用ui时,我不认为有任何额外规则适用:include,这是可能的组合技术之一,而表单布局似乎更多的是业务结构驱动。