我们从RichFaces 3切换到4并且在<rich:tabPanel>
有一些概念性问题...使用RichFaces 3你可以做类似的事情:
<rich:tabPanel switchType="server">
<rich:tab header="A">
<h:form>
<h:commandButton value="A1" />
</h:form>
<h:form>
<h:commandButton value="A2" />
</h:form>
</rich:tab>
<rich:tab header="B">
<h:form>
<h:commandButton value="B" />
</h:form>
</rich:tab>
<rich:tab header="C">
<h:form>
<h:commandButton value="C" />
</h:form>
</rich:tab>
</rich:tabPanel>
不再适用于JSF 2和RichFaces 4 - <rich:tabPanel>
需要<h:form>
switchType="server"
或"ajax"
...只有客户才能在没有表单的情况下工作。所以我们现在必须像这样构建它:
<h:form>
<rich:tabPanel switchType="server">
<rich:tab header="A">
<h:commandButton value="A1" />
<h:commandButton value="A2" />
</rich:tab>
<rich:tab header="B">
<h:commandButton value="B" />
</rich:tab>
<rich:tab header="C">
<h:commandButton value="C" />
</rich:tab>
</rich:tabPanel>
</form>
有效......但我之前无法将A1
和A2
分开,这些形式之前已经是单独的形式。
如何在不使用switchType="client"
的情况下解决该问题?
答案 0 :(得分:1)
您可以使用@execute限制<a4j:commandButton execute="@region">
的范围。可能最简单的方法是将数据包装在<a4j:region>
中并在按钮上设置execute="@region"
。
答案 1 :(得分:1)
富表格中的多表单支持:tabPanel票证最近被拒绝,建议使用a4j:region
:
这不会被实现,&lt; a4j:region&gt;可以用来限制 选项卡内的执行范围。