p:commandButton呈现的属性不会使用ajax更新

时间:2017-05-16 18:51:31

标签: primefaces jsf-2 jsf-2.2

this answer我得到了:

  

您只能ajax更新始终呈现的组件(即   当它没有渲染属性时。)

但我尝试了这段代码并且ajax-update对我不起作用,我需要刷新浏览器以查看更改的按钮。我做错了什么?

<p:outputPanel id="buttonArea">
    <p:panel styleClass="button-area" 
             rendered="#{user != null and loginManager.profile.id != userPage.profile.id}">
        <h:form>
             <p:commandButton styleClass="button-flat" action="#{userPage.followUser}"
                              value="Follow" rendered="#{!userPage.followed}" update="buttonArea"/>
             <p:commandButton styleClass="button-flat" action="#{userPage.unfollowUser}"
                              value="Unfollow" rendered="#{userPage.followed}" update="buttonArea"/>
        </h:form>
    </p:panel>
</p:outputPanel>

编辑:

我尝试了可能重复的问题的解决方案,它对我来说也不起作用,我做错了,它没有在那里解释,我尝试使用ajax标签,html中的id正好是'buttonArea'但是当我引用id时,我甚至尝试使用和不使用冒号,我尝试使用片段......

1 个答案:

答案 0 :(得分:-1)

您的commandButtons需要自己的ID。更新它们而不是面板。