我的JSF页面上有下一个代码:
<b:dataTable value = "#{formBean.formularios}" var = "formulario" id = "dataTableFormularios">
<p:column>
<f:facet name = "header">
<h:outputText value = "Nombre Formulario"/>
</f:facet>
<h:form>
<p:commandLink update = "..." process="@this" action="..." value = "#{formulario.nombre}"/>
</h:form>
</p:column>
</b:dataTable>
我的目标:我希望为用户提供同时从表中删除某些记录的能力,而无需付出太多努力。你建议我做什么?
我的建议:使用带有按钮的b:selectBooleanCheckbox
,并在<h:form>
中涵盖所有这些。
我的提案的问题:为了用按钮覆盖所有selectBooleanCheckbox
,我认为它也应该覆盖整个表格。如果我重新饲养整个表都会在<p:commandLink>
<h:form>
出现结构故障:
<h:form>
<b:dataTable value = "#{formBean.formularios}" var = "formulario" id = "dataTableFormularios">
<p:column>
<f:facet name = "header">
<h:outputText value = ""/>
</f:facet>
<b:selectBooleanCheckbox value = "{#formulario.id}"/>
</p:column>
<p:column>
<f:facet name = "header">
<h:outputText value = "Nombre Formulario"/>
</f:facet>
<h:form>
<p:commandLink update = "..." process="@this" action="..." value = "#{formulario.nombre}"/>
</h:form>
</p:column>
</b:dataTable>
<b:commandButton .../>
</h:form>
只需像您一样用form
包裹整个dataTable
,然后删除dataTable
中的所有其他form
元素。dataTable
内的commandLink
仍然有效