我有以下情况:命令按钮动作不叫
<h:form>
<h:panelGrid columns="2" cellpadding="5">
<p:commandButton id="loginButton" value="Login" ajax="false"
action="#{login.loginAction}" />
</h:panelGrid>
</h:form>
当我按一下按钮,方法则loginAction(),从我的豆,被执行。
如果我有:
<h:form>
<h:panelGrid columns="2" cellpadding="5">
<h:outputLabel for="username" value="#{labels.UserName}" />
<p:inputText value="#{login.username}" id="username"
required="true" />
<p:commandButton id="loginButton" value="Login" ajax="false"
action="#{login.loginAction}" />
</h:panelGrid>
</h:form>
在这种情况下,当我按下登录按钮的方法在loginAction()不叫了,我不明白为什么。用户名的设置器被调用,但是loginAction没有。
我使用的是JSF 2.0,Primefaces 3.3。
非常感谢。
'h:commandButton'没有'ajax'属性,你可以忽略它。如果你不嵌入'f:ajax',h:commandButton是一个非ajax按钮,并触发完整的表单提交。 – 2012-07-27 07:52:53
谢谢你!实际上,JSF应该在开发状态下将其记录在控制台中。 – lauksas 2014-03-20 19:54:40