1

我对<h:commandButton>带有<f:ajax>标签的 jsf 有疑问。如果它有<f:ajax>标签,它会调用支持 bean 中的其他actionactionListener方法。如果它没有<f:ajax>标签,它会调用自己的正确action方法。这是我的片段:

 <h:form>
    <h:panelGroup id="loanContent" layout="block">
        <ui:include src="#{mainView.typePage}.xhtml"/>
    </h:panelGroup>
    <h:commandButton id ="rLoanBtn" value="Create" action="#{mainView.createNewType}">
        <f:ajax execute="loanContent" render="@form"/>
    </h:commandButton>  
 </h:form>

如果我省略<f:ajax execute="loanContent"/>部分,它工作正常。如果我保持原样,它会调用其他方法,这些方法负责相同形式的其他按钮。顺便说一句mainView,支持 bean 是一个ViewScoped托管 bean。

4

1 回答 1

5

我已经找到原因了。如果我有<type = "button">其他按钮的属性,它会在其实际方法之前通过绑定到其他按钮的方法。所以我省略了它然后它工作正常。

于 2013-07-25T00:46:16.787 回答