当compA
本身可以包含在另一种形式(在使用页面中)时,拥有一个包含表单的复合组件(compA
)是否正确?
<!-- composite -->
<cc:implementation>
<h:form id="innerForm">
... composite stuff
</h:form>
</cc:implementation>
<!-- using page/component -->
<h:form id="outerForm">
<util:compA ... />
</h:form>
当尝试删除嵌套表单时,复合中的任何ajax调用都将提交整个表单,并且由于某些值可能尚未填充,验证将失败。
对此有没有最佳实践方法?
答案 0 :(得分:1)
嵌套表单总是一个坏主意,将导致无效的HTML输出。
复合组件本身是Naming Container所以处理只有CC或甚至它的某些部分应该不是问题。
为了防止整个表单被提交,我建议使用partialSubmit="true"
来调用PrimeFaces AJAX。请参阅here以供参考。
如果您的AJAX呼叫仍然存在问题,您可以提供CC的相关代码。