Richfaces a4j:在ajax响应后启用时,commandButton无法正常工作

时间:2011-04-27 19:21:01

标签: java jsf richfaces

我有富表面页面,我必须添加/更新/删除用户详细信息。

我的表单包含用户详细信息字段(例如:UserID,名字,姓氏......)以及添加/更新/删除用户的三个按钮。

首先,应输入用户ID。通过ajax请求我将尝试获取详细信息。如果存在用户,将启用更新和删除按钮。否则,将启用添加按钮。需要通过添加按钮手动输入和提交详细信息。所有三个按钮都是ajax请求。

单击获取详细信息后,按照条件正确启用按钮,但是当我单击它们时,没有任何反应。我看到正在发送Ajax请求而不是动作方法,并且收到空白响应。

如果我从中移除了disabled属性,那么所有三个按钮都可以工作!!

<a4j:form>
<rich:panel id="UserManagePanel">
    <h:outputText value="User ID: "/>
    <a4j:region>
        <h:inputText id="userId" size="26" value="#{addUser.userName}" required="true" />
        <a4j:commandLink action="#{adminManager.getUserDetails()}" reRender="UserManagePanel" value="Get Details" />
    </a4j:region>
    <h:outputText value="First Name:" />
    <h:inputText value="#{addUser.firstName}" required="true" />
    <h:outputText value="Last Name: " />
    <h:inputText value="#{addUser.lastName}" required="true" />
    <h:outputText value="Email: " />
    <h:inputText value="#{addUser.emailId}" required="true" />
    <a4j:commandButton value="Add" reRender="messageArea" action="#{adminManager.saveUser()}" disabled="#{addUser.userExists}"/>
    <a4j:commandButton value="Modify" reRender="messageArea" action="#{adminManager.updateUser()}" disabled="#{!addUser.userExists}"/>
    <a4j:commandButton value="Delete" reRender="messageArea" action="#{adminManager.deleteUser()}" disabled="#{!addUser.userExists}"/>
</rich:panel>

知道我在这里做错了吗?

1 个答案:

答案 0 :(得分:1)

单击按钮时,确保禁用评估为“false”。