PrimeFaces命令按钮,用于设置编辑模式和刷新表单



我试图有一个按钮,设置编辑模式和刷新表单,但通过点击按钮,什么都没有发生。

这是我的代码:

<h:form>
    <h:panelGrid columns="2" cellpadding="5">
        <p:commandButton type="submit" value="Edit Your Records" icon="ui-icon-edit"
                         update="@form" rendered="#{!bean.editMode}">
            <f:setPropertyActionListener value="true" target="#{bean.editMode}"/>
        </p:commandButton>
        <p:commandButton type="submit" value="Exit Edit Mode" icon="ui-icon-back" 
                         update="@form" rendered="#{bean.editMode}">
            <f:setPropertyActionListener value="false" target="#{bean.editMode}"/>
        </p:commandButton>
    </h:panelGrid>
    <p:dataTable id="table" value="#{bean.table}" var="apartment">
        ...
    </p:dataTable>
</h:form>

谢谢!

我建议使用

<h:form>
    <p:commandButton value="Edit Your Records" update="@form" rendered="#{!bean.editMode}" action="#{bean.toggleEditMode()}" />
    <p:commandButton value="Exit Edit Mode" update="@form" rendered="#{bean.editMode}" action="#{bean.toggleEditMode()}" />
    <h:outputText value="#{bean.editMode}" />

public void toggleEditMode() {
    this.editMode = !this.editMode;
}

好的,看起来在'action'属性中调用的函数需要返回一个String。

public String toggleEditMode() {
    this.editMode = !this.editMode;
    return "#";
}

谢谢!

最新更新