jsf - h :inputtext enable/disable from class

标签 jsf

您好,根据我的要求,有一个 h:inputtext 可以找到用户。如果找到用户,它会在相应的 h:inputtext 中填充名字、姓氏和电子邮件,这是禁用的。但如果未找到,则应启用 inputtext 并填写新的详细信息。

<h:inputText value="#{countryBean.usersDetailsDTO.eid}" id="eid" required="true"       requiredMessage="Enter EID">

            <f:ajax></f:ajax>
        </h:inputText><h:message styleClass="msgStyle4" id="msgEid" for="eid"/>
    </div>
    <h:commandButton  styleClass="search_btn"   immediate="true">
        <f:ajax listener="#{countryBean.getUserDetail}" render="empFName empLName empEmail" event="click" execute="@this" />
    </h:commandButton>
    <div class="clear">&nbsp;</div>

    <div class="form-field" style="margin-left:222px;">
        first Name  <h:inputText value="#{countryBean.usersDetailsDTO.firstName}" id="empFName" required="true" requiredMessage="Enter First Name">
        <f:validator validatorId="nameValidation" />
        </h:inputText><h:message styleClass="msgStyle4" id="msgfn" for="empFName"/>
    </div>
    <div class="clear"></div>
    <div class="form-field" style="margin-left:10px;">
        last name  <h:inputText value="#{countryBean.usersDetailsDTO.lastName}" id="empLName" required="true" requiredMessage="Enter Last Name">
        <f:validator validatorId="nameValidation" />
        </h:inputText><h:message styleClass="msgStyle4"  id="msgln" for="empLName"/>
    </div><div class="clear"></div>
    <div class="form-field" style="margin-left:10px;">
        email<h:inputText value="#{countryBean.usersDetailsDTO.email}" id="empEmail" required="true" requiredMessage="Enter Email Address">
        <f:validator validatorId="emailValidation" />
        </h:inputText><h:message styleClass="msgStyle4"  id="msgEmail" for="empEmail"/>
    </div>

最佳答案

您可以随时使用 disabled 属性和 JSF EL 将 bool 值传递给 disabled 属性。
例如在你的情况下如果你想禁用任何 h:inputText 如果名字是预先填充的那么:

<h:inputText value="#{countryBean.usersDetailsDTO.email}" id="empEmail"     
required="true" requiredMessage="Enter Email Address"      
disabled="#{not(empty countryBean.usersDetailsDTO.firstName)}">

如果 firstname 已预先填充,以上代码将禁用 Email 输入文本 disabled

关于jsf - h :inputtext enable/disable from class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18480804/

相关文章:

css - 如何在值为空或零时隐藏徽章

java - 如何提交带有复选框的表单?

java - 捕获按键按下的 ajax 事件,无需输入字段

jsf - 从支持 bean 更新 PrimeFaces 数据表

java - Primefaces 更新破坏变音符号

java - 将现有的 JSF 项目从 Windows 切换到 MacOS

java - 无法滚动 Primefaces 分层菜单的 DIV

html - 浏览器发起的重定向 GET 请求未成功

java - 在 JSF2.0 中动态创建和填充 DataTable

java - IntelliJ IDEA 14.1.4 中不支持 JSF